diff --git a/src/main/java/com/comandante/creeper/Items/ItemDecayManager.java b/src/main/java/com/comandante/creeper/Items/ItemDecayManager.java
index 73be57b049dbb0770f95a49fe026f722c5f1f884..93aa15c41ca0da66dfa1f86f525b9617c31b56fb 100644
--- a/src/main/java/com/comandante/creeper/Items/ItemDecayManager.java
+++ b/src/main/java/com/comandante/creeper/Items/ItemDecayManager.java
@@ -1,7 +1,7 @@
 package com.comandante.creeper.Items;
 
-import com.comandante.creeper.managers.EntityManager;
-import com.comandante.creeper.model.CreeperEntity;
+import com.comandante.creeper.entity.EntityManager;
+import com.comandante.creeper.entity.CreeperEntity;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/src/main/java/com/comandante/creeper/Items/ItemType.java b/src/main/java/com/comandante/creeper/Items/ItemType.java
index 41965b0573cd35e117785866218910bc63d6a63d..ae880049fe2f98e437eb1fefc70d9d2d5dfaf0c3 100644
--- a/src/main/java/com/comandante/creeper/Items/ItemType.java
+++ b/src/main/java/com/comandante/creeper/Items/ItemType.java
@@ -4,7 +4,7 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.UUID;
 
-import static com.comandante.creeper.model.Color.*;
+import static com.comandante.creeper.server.Color.*;
 
 public enum ItemType {
 
diff --git a/src/main/java/com/comandante/creeper/Main.java b/src/main/java/com/comandante/creeper/Main.java
index 054b787d8ded15d9aef44ae4bd2be0263a97d3de..8c1fa10bd9b2616881856e78923f9f39a0149d8b 100644
--- a/src/main/java/com/comandante/creeper/Main.java
+++ b/src/main/java/com/comandante/creeper/Main.java
@@ -1,15 +1,15 @@
 package com.comandante.creeper;
 
-import com.comandante.creeper.builder.RoomBuilders;
+import com.comandante.creeper.room.RoomBuilders;
 import com.comandante.creeper.command.CommandService;
 import com.comandante.creeper.command.DefaultCommandHandler;
-import com.comandante.creeper.managers.EntityManager;
+import com.comandante.creeper.entity.EntityManager;
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.managers.PlayerManager;
-import com.comandante.creeper.managers.RoomManager;
-import com.comandante.creeper.model.PlayerMetadata;
-import com.comandante.creeper.model.Stats;
-import com.comandante.creeper.model.StatsBuilder;
+import com.comandante.creeper.player.PlayerManager;
+import com.comandante.creeper.room.RoomManager;
+import com.comandante.creeper.player.PlayerMetadata;
+import com.comandante.creeper.stat.Stats;
+import com.comandante.creeper.stat.StatsBuilder;
 import com.comandante.creeper.npc.Derper;
 import com.comandante.creeper.server.CreeperServer;
 import org.apache.commons.codec.binary.Base64;
@@ -38,7 +38,7 @@ public class Main {
             playerManager.savePlayerMetadata(new PlayerMetadata("chris", "poop", new String(Base64.encodeBase64("chris".getBytes())), chrisBrianStats));
         }
 
-        if (playerManager.getPlayerMetadata(createPlayerId("chris")) == null) {
+        if (playerManager.getPlayerMetadata(createPlayerId("brian")) == null) {
             System.out.println("Creating Brian User.");
             playerManager.savePlayerMetadata(new PlayerMetadata("brian", "poop", new String(Base64.encodeBase64("brian".getBytes())), chrisBrianStats));
         }
diff --git a/src/main/java/com/comandante/creeper/RandomMOTD.java b/src/main/java/com/comandante/creeper/RandomMOTD.java
deleted file mode 100644
index aa23748fd1c137a25050437f02cc965eb7095625..0000000000000000000000000000000000000000
--- a/src/main/java/com/comandante/creeper/RandomMOTD.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.comandante.creeper;
-
-
-public class RandomMOTD {
-
-
-}
diff --git a/src/main/java/com/comandante/creeper/command/commands/Command.java b/src/main/java/com/comandante/creeper/command/commands/Command.java
index 904543e71399132fcea0821fda9c28e4ee1f8cb1..a2fdcaef8469f2ad33c764230fd7493ab5a4e00a 100644
--- a/src/main/java/com/comandante/creeper/command/commands/Command.java
+++ b/src/main/java/com/comandante/creeper/command/commands/Command.java
@@ -1,7 +1,7 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
+import com.comandante.creeper.player.Player;
 import com.google.common.collect.ImmutableList;
 
 import java.util.ArrayList;
diff --git a/src/main/java/com/comandante/creeper/command/commands/DropCommand.java b/src/main/java/com/comandante/creeper/command/commands/DropCommand.java
index 882ba73edc5416c6a3d3842a931b81aaad773af9..5166a1aeb5f781b4025baa593d48c505bd3a499f 100644
--- a/src/main/java/com/comandante/creeper/command/commands/DropCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/DropCommand.java
@@ -2,8 +2,8 @@ package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.Items.Item;
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.PlayerMetadata;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.PlayerMetadata;
+import com.comandante.creeper.room.Room;
 import com.comandante.creeper.server.CreeperSession;
 import com.google.common.base.Joiner;
 import com.google.common.collect.ImmutableList;
diff --git a/src/main/java/com/comandante/creeper/command/commands/GossipCommand.java b/src/main/java/com/comandante/creeper/command/commands/GossipCommand.java
index 2a6da5aa45347238f5abde421143ec28da0816b9..25fbc7f7d6a88a250508e5bb630fa4d140148496 100644
--- a/src/main/java/com/comandante/creeper/command/commands/GossipCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/GossipCommand.java
@@ -2,14 +2,14 @@ package com.comandante.creeper.command.commands;
 
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
+import com.comandante.creeper.player.Player;
 import com.google.common.collect.ImmutableList;
 
 import java.util.Iterator;
 import java.util.Map;
 
-import static com.comandante.creeper.model.Color.MAGENTA;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.MAGENTA;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class GossipCommand extends Command {
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/InventoryCommand.java b/src/main/java/com/comandante/creeper/command/commands/InventoryCommand.java
index 32c24ea6009372715682d6024ddeb95ddfb9b260..8d29264bc640e6c8d646a8a306e4c83153befaa0 100644
--- a/src/main/java/com/comandante/creeper/command/commands/InventoryCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/InventoryCommand.java
@@ -4,15 +4,14 @@ package com.comandante.creeper.command.commands;
 import com.comandante.creeper.Items.Item;
 import com.comandante.creeper.Items.ItemType;
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.PlayerMetadata;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.player.PlayerMetadata;
 import com.google.common.collect.ImmutableList;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 
-import static com.comandante.creeper.model.Color.CYAN;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class InventoryCommand extends Command {
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/KillCommand.java b/src/main/java/com/comandante/creeper/command/commands/KillCommand.java
index e19a4b9cce4feb74f332846fae83b1612133d05b..a905b661d22e9bb7f3f003845eacc354362bc830 100644
--- a/src/main/java/com/comandante/creeper/command/commands/KillCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/KillCommand.java
@@ -1,9 +1,9 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.FightManager;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.managers.FightManager;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.room.Room;
 import com.comandante.creeper.npc.Npc;
 import com.google.common.base.Joiner;
 import com.google.common.collect.ImmutableList;
diff --git a/src/main/java/com/comandante/creeper/command/commands/LookCommand.java b/src/main/java/com/comandante/creeper/command/commands/LookCommand.java
index ee286d437633125ddcb4b2a7939f16fec2285b2b..15a7fb852341736a21f473c204867ab203f35e53 100644
--- a/src/main/java/com/comandante/creeper/command/commands/LookCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/LookCommand.java
@@ -1,8 +1,8 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.room.Room;
 import com.google.common.base.Joiner;
 import com.google.common.collect.ImmutableList;
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/MovementCommand.java b/src/main/java/com/comandante/creeper/command/commands/MovementCommand.java
index cd87fc2bf3c0cd79024f8a7e444b7ed19921b607..253844ec75896bc3796610a05b4a5752fd08bb7f 100644
--- a/src/main/java/com/comandante/creeper/command/commands/MovementCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/MovementCommand.java
@@ -1,9 +1,9 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Movement;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.PlayerMovement;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.room.Room;
 import com.comandante.creeper.server.ChannelUtils;
 import com.google.common.base.Optional;
 import com.google.common.collect.ImmutableList;
@@ -47,7 +47,7 @@ public class MovementCommand extends Command {
         }
         Room currentRoom = roomOptional.get();
         final String command = getOriginalMessageParts().get(0);
-        Movement movement = null;
+        PlayerMovement playerMovement = null;
         if (!validTriggers.contains(command.toLowerCase())) {
             throw new RuntimeException("Malformed movement command.");
         }
@@ -57,7 +57,7 @@ public class MovementCommand extends Command {
                 return;
             }
             Room destinationRoom = gameManager.getRoomManager().getRoom(currentRoom.getNorthId().get());
-            movement = new Movement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the north.", "south");
+            playerMovement = new PlayerMovement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the north.", "south");
         }
         if (southTriggers.contains(command.toLowerCase())) {
             if (!currentRoom.getSouthId().isPresent()) {
@@ -65,7 +65,7 @@ public class MovementCommand extends Command {
                 return;
             }
             Room destinationRoom = gameManager.getRoomManager().getRoom(currentRoom.getSouthId().get());
-            movement = new Movement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the south.", "north");
+            playerMovement = new PlayerMovement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the south.", "north");
         }
         if (eastTriggers.contains(command.toLowerCase())) {
             if (!currentRoom.getEastId().isPresent()) {
@@ -73,7 +73,7 @@ public class MovementCommand extends Command {
                 return;
             }
             Room destinationRoom = gameManager.getRoomManager().getRoom(currentRoom.getEastId().get());
-            movement = new Movement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the east.", "west");
+            playerMovement = new PlayerMovement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the east.", "west");
         }
         if (westTriggers.contains(command.toLowerCase())) {
             if (!currentRoom.getWestId().isPresent()) {
@@ -81,7 +81,7 @@ public class MovementCommand extends Command {
                 return;
             }
             Room destinationRoom = gameManager.getRoomManager().getRoom(currentRoom.getWestId().get());
-            movement = new Movement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the west.", "east");
+            playerMovement = new PlayerMovement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the west.", "east");
         }
         if (upTriggers.contains(command.toLowerCase())) {
             if (!currentRoom.getUpId().isPresent()) {
@@ -89,7 +89,7 @@ public class MovementCommand extends Command {
                 return;
             }
             Room destinationRoom = gameManager.getRoomManager().getRoom(currentRoom.getUpId().get());
-            movement = new Movement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the west.", "down");
+            playerMovement = new PlayerMovement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the west.", "down");
         }
         if (downTriggers.contains(command.toLowerCase())) {
             if (!currentRoom.getDownId().isPresent()) {
@@ -97,12 +97,12 @@ public class MovementCommand extends Command {
                 return;
             }
             Room destinationRoom = gameManager.getRoomManager().getRoom(currentRoom.getDownId().get());
-            movement = new Movement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the west.", "up");
+            playerMovement = new PlayerMovement(player, currentRoom.getRoomId(), destinationRoom.getRoomId(), this, "exited to the west.", "up");
         }
-        gameManager.movePlayer(movement);
-        if (movement != null) {
-            player.setReturnDirection(Optional.of(movement.getReturnDirection()));
-            gameManager.currentRoomLogic(movement.getPlayer().getPlayerId());
+        gameManager.movePlayer(playerMovement);
+        if (playerMovement != null) {
+            player.setReturnDirection(Optional.of(playerMovement.getReturnDirection()));
+            gameManager.currentRoomLogic(playerMovement.getPlayer().getPlayerId());
         }
     }
 }
diff --git a/src/main/java/com/comandante/creeper/command/commands/PickUpCommand.java b/src/main/java/com/comandante/creeper/command/commands/PickUpCommand.java
index eeb3cd3d4834378acfdde1c89aac65e06e245ec5..e173feb0db701c520dd8655df1979a856189f526 100644
--- a/src/main/java/com/comandante/creeper/command/commands/PickUpCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/PickUpCommand.java
@@ -2,8 +2,8 @@ package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
 import com.comandante.creeper.Items.Item;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.room.Room;
 import com.google.common.base.Joiner;
 import com.google.common.collect.ImmutableList;
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/SayCommand.java b/src/main/java/com/comandante/creeper/command/commands/SayCommand.java
index f473790964be5a2b779cd318203d199ae9b6c75b..682e8c3ec75c7bdd70e11a134d686420ae249b4d 100644
--- a/src/main/java/com/comandante/creeper/command/commands/SayCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/SayCommand.java
@@ -1,15 +1,15 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.room.Room;
 import com.google.common.base.Optional;
 import com.google.common.collect.ImmutableList;
 
 import java.util.Set;
 
-import static com.comandante.creeper.model.Color.RED;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.RED;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class SayCommand extends Command {
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/TellCommand.java b/src/main/java/com/comandante/creeper/command/commands/TellCommand.java
index eb0c2c2ab1fef99a524e3d20aabe7715ddc977f5..261498840d424f489be4ff1e304742d35c87fbf6 100644
--- a/src/main/java/com/comandante/creeper/command/commands/TellCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/TellCommand.java
@@ -1,15 +1,15 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
+import com.comandante.creeper.player.Player;
 import com.google.common.base.Joiner;
 import com.google.common.collect.ImmutableList;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 
-import static com.comandante.creeper.model.Color.RESET;
-import static com.comandante.creeper.model.Color.YELLOW;
+import static com.comandante.creeper.server.Color.RESET;
+import static com.comandante.creeper.server.Color.YELLOW;
 
 public class TellCommand extends Command {
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/WhoCommand.java b/src/main/java/com/comandante/creeper/command/commands/WhoCommand.java
index 55486998ecbadb50b52cd43843fbd1f4f91df95c..27a6b5dbe5dc32d8025e8ad63bf498a9083bd8d1 100644
--- a/src/main/java/com/comandante/creeper/command/commands/WhoCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/WhoCommand.java
@@ -1,13 +1,13 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
+import com.comandante.creeper.player.Player;
 import com.google.common.collect.ImmutableList;
 
 import java.util.Set;
 
-import static com.comandante.creeper.model.Color.CYAN;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.CYAN;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class WhoCommand extends Command {
 
diff --git a/src/main/java/com/comandante/creeper/command/commands/WhoamiCommand.java b/src/main/java/com/comandante/creeper/command/commands/WhoamiCommand.java
index fc2375392a0f7be733c4ca951fd33e4bb161af0e..cd1e6685422b8334f6e7ebe1dfa52b0a3fdad9cc 100644
--- a/src/main/java/com/comandante/creeper/command/commands/WhoamiCommand.java
+++ b/src/main/java/com/comandante/creeper/command/commands/WhoamiCommand.java
@@ -1,7 +1,7 @@
 package com.comandante.creeper.command.commands;
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
+import com.comandante.creeper.player.Player;
 import com.google.common.collect.ImmutableList;
 
 public class WhoamiCommand extends Command {
diff --git a/src/main/java/com/comandante/creeper/model/CreeperEntity.java b/src/main/java/com/comandante/creeper/entity/CreeperEntity.java
similarity index 90%
rename from src/main/java/com/comandante/creeper/model/CreeperEntity.java
rename to src/main/java/com/comandante/creeper/entity/CreeperEntity.java
index 55059d5dd1da7880ba76d63396406cc95d5cdb9c..3a121db792d349022585e10f910c5f7bf839da1f 100644
--- a/src/main/java/com/comandante/creeper/model/CreeperEntity.java
+++ b/src/main/java/com/comandante/creeper/entity/CreeperEntity.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.entity;
 
 import java.util.UUID;
 
diff --git a/src/main/java/com/comandante/creeper/managers/EntityManager.java b/src/main/java/com/comandante/creeper/entity/EntityManager.java
similarity index 94%
rename from src/main/java/com/comandante/creeper/managers/EntityManager.java
rename to src/main/java/com/comandante/creeper/entity/EntityManager.java
index 87ae9e3b8768f1b71c6b748abb8f392a0c98c127..20451bd887e8e6ea239c525023a9ddbc7e5d015c 100644
--- a/src/main/java/com/comandante/creeper/managers/EntityManager.java
+++ b/src/main/java/com/comandante/creeper/entity/EntityManager.java
@@ -1,11 +1,12 @@
-package com.comandante.creeper.managers;
+package com.comandante.creeper.entity;
 
-import com.comandante.creeper.model.CreeperEntity;
 import com.comandante.creeper.Items.Item;
 import com.comandante.creeper.Items.ItemSerializer;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
 import com.comandante.creeper.npc.Npc;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.player.PlayerManager;
+import com.comandante.creeper.room.Room;
+import com.comandante.creeper.room.RoomManager;
 import org.mapdb.DB;
 import org.mapdb.HTreeMap;
 
diff --git a/src/main/java/com/comandante/creeper/model/FightManager.java b/src/main/java/com/comandante/creeper/managers/FightManager.java
similarity index 93%
rename from src/main/java/com/comandante/creeper/model/FightManager.java
rename to src/main/java/com/comandante/creeper/managers/FightManager.java
index 5d2941f39fc5098ba3eef0a26392c44a71de0e6f..26fa7680ac68fb9b9003c3ed00e556eafc17404d 100644
--- a/src/main/java/com/comandante/creeper/model/FightManager.java
+++ b/src/main/java/com/comandante/creeper/managers/FightManager.java
@@ -1,9 +1,12 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.managers;
 
-import com.comandante.creeper.managers.EntityManager;
-import com.comandante.creeper.managers.PlayerManager;
-import com.comandante.creeper.managers.RoomManager;
+import com.comandante.creeper.entity.EntityManager;
+import com.comandante.creeper.stat.Stats;
+import com.comandante.creeper.player.PlayerManager;
+import com.comandante.creeper.room.RoomManager;
 import com.comandante.creeper.npc.Npc;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.player.PlayerMetadata;
 import com.comandante.creeper.server.ChannelUtils;
 
 import java.util.Random;
diff --git a/src/main/java/com/comandante/creeper/managers/GameManager.java b/src/main/java/com/comandante/creeper/managers/GameManager.java
index 7fdc731ac3a1d19b15d912af19f31efbf5a0298a..4707dd3afca64cb9a11c6c1b4b33c373f6d8900e 100644
--- a/src/main/java/com/comandante/creeper/managers/GameManager.java
+++ b/src/main/java/com/comandante/creeper/managers/GameManager.java
@@ -3,11 +3,13 @@ package com.comandante.creeper.managers;
 
 import com.comandante.creeper.Items.Item;
 import com.comandante.creeper.Items.ItemDecayManager;
-import com.comandante.creeper.model.FightManager;
-import com.comandante.creeper.model.Movement;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.entity.EntityManager;
+import com.comandante.creeper.player.PlayerMovement;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.player.PlayerManager;
+import com.comandante.creeper.room.Room;
 import com.comandante.creeper.npc.Npc;
+import com.comandante.creeper.room.RoomManager;
 import com.comandante.creeper.server.ChannelUtils;
 import com.comandante.creeper.server.CreeperSession;
 import com.google.common.base.Optional;
@@ -20,9 +22,9 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Set;
 
-import static com.comandante.creeper.model.Color.BRIGHT_GREEN;
-import static com.comandante.creeper.model.Color.GREEN;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.BRIGHT_GREEN;
+import static com.comandante.creeper.server.Color.GREEN;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class GameManager {
 
@@ -128,21 +130,21 @@ public class GameManager {
         playerCurrentRoom.get().addAfkPlayer(playerByUsername.getPlayerId());
     }
 
-    public void movePlayer(Movement movement) {
+    public void movePlayer(PlayerMovement playerMovement) {
         synchronized (Interners.newStrongInterner()) {
-            Room sourceRoom = roomManager.getRoom(movement.getSourceRoomId());
-            Room destinationRoom = roomManager.getRoom(movement.getDestinationRoomId());
-            sourceRoom.removePresentPlayer(movement.getPlayer().getPlayerId());
+            Room sourceRoom = roomManager.getRoom(playerMovement.getSourceRoomId());
+            Room destinationRoom = roomManager.getRoom(playerMovement.getDestinationRoomId());
+            sourceRoom.removePresentPlayer(playerMovement.getPlayer().getPlayerId());
             for (Player next : playerManager.getPresentPlayers(sourceRoom)) {
                 StringBuilder sb = new StringBuilder();
-                sb.append(movement.getPlayer().getPlayerName());
-                sb.append(" ").append(movement.getRoomExitMessage());
+                sb.append(playerMovement.getPlayer().getPlayerName());
+                sb.append(" ").append(playerMovement.getRoomExitMessage());
                 channelUtils.writeNoPrompt(next.getPlayerId(), sb.toString());
             }
             for (Player next : playerManager.getPresentPlayers(destinationRoom)) {
-                channelUtils.writeNoPrompt(next.getPlayerId(), movement.getPlayer().getPlayerName() + " arrived.");
+                channelUtils.writeNoPrompt(next.getPlayerId(), playerMovement.getPlayer().getPlayerName() + " arrived.");
             }
-            destinationRoom.addPresentPlayer(movement.getPlayer().getPlayerId());
+            destinationRoom.addPresentPlayer(playerMovement.getPlayer().getPlayerId());
         }
     }
 
diff --git a/src/main/java/com/comandante/creeper/managers/NewUserRegistrationManager.java b/src/main/java/com/comandante/creeper/managers/NewUserRegistrationManager.java
index 84d5cf56ffee74bdbd6c3fb4e17db0c27f093166..301eb2e33a1e90efd71ce6d6f8ff7ba631c954f3 100644
--- a/src/main/java/com/comandante/creeper/managers/NewUserRegistrationManager.java
+++ b/src/main/java/com/comandante/creeper/managers/NewUserRegistrationManager.java
@@ -2,8 +2,9 @@ package com.comandante.creeper.managers;
 
 
 import com.comandante.creeper.Main;
-import com.comandante.creeper.model.PlayerMetadata;
-import com.comandante.creeper.model.PlayerStats;
+import com.comandante.creeper.player.PlayerManager;
+import com.comandante.creeper.player.PlayerMetadata;
+import com.comandante.creeper.player.PlayerStats;
 import com.comandante.creeper.server.CreeperSession;
 import com.google.common.base.Optional;
 import org.jboss.netty.channel.MessageEvent;
diff --git a/src/main/java/com/comandante/creeper/model/FightResults.java b/src/main/java/com/comandante/creeper/model/FightResults.java
deleted file mode 100644
index 67c32351a39d9f019220fbc9fe623c00bf0290b6..0000000000000000000000000000000000000000
--- a/src/main/java/com/comandante/creeper/model/FightResults.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.comandante.creeper.model;
-
-public class FightResults {
-    private final Stats challenger;
-    private final Stats victim;
-
-    public FightResults(Stats challenger, Stats victim) {
-        this.challenger = challenger;
-        this.victim = victim;
-    }
-}
diff --git a/src/main/java/com/comandante/creeper/npc/Derper.java b/src/main/java/com/comandante/creeper/npc/Derper.java
index 0978dbea21a5250a36179b25b913730a975d13a6..81db52dd8511189c9d6a2b2c07c1b9759292ed13 100644
--- a/src/main/java/com/comandante/creeper/npc/Derper.java
+++ b/src/main/java/com/comandante/creeper/npc/Derper.java
@@ -2,14 +2,13 @@ package com.comandante.creeper.npc;
 
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.NpcStats;
 
 import java.util.Arrays;
 import java.util.List;
 import java.util.Random;
 
-import static com.comandante.creeper.model.Color.GREEN;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.GREEN;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class Derper extends Npc {
 
diff --git a/src/main/java/com/comandante/creeper/npc/Npc.java b/src/main/java/com/comandante/creeper/npc/Npc.java
index 150450dbf18b5f2922b1cf354bd64099dbdd1eda..4d3b0bffeee13a513ccf96bd1119aa81b27a95b7 100644
--- a/src/main/java/com/comandante/creeper/npc/Npc.java
+++ b/src/main/java/com/comandante/creeper/npc/Npc.java
@@ -2,11 +2,11 @@ package com.comandante.creeper.npc;
 
 
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.CreeperEntity;
-import com.comandante.creeper.model.Stats;
+import com.comandante.creeper.entity.CreeperEntity;
+import com.comandante.creeper.stat.Stats;
 
-import static com.comandante.creeper.model.Color.RED;
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.RED;
+import static com.comandante.creeper.server.Color.RESET;
 
 
 public abstract class Npc extends CreeperEntity {
diff --git a/src/main/java/com/comandante/creeper/model/NpcStats.java b/src/main/java/com/comandante/creeper/npc/NpcStats.java
similarity index 82%
rename from src/main/java/com/comandante/creeper/model/NpcStats.java
rename to src/main/java/com/comandante/creeper/npc/NpcStats.java
index 3e5925755f1e6cd896dd693e97ae0b9927511e21..dcfed51770dd97e6f9ae16476a7e4d83884f8cc9 100644
--- a/src/main/java/com/comandante/creeper/model/NpcStats.java
+++ b/src/main/java/com/comandante/creeper/npc/NpcStats.java
@@ -1,4 +1,6 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.npc;
+
+import com.comandante.creeper.stat.StatsBuilder;
 
 public class NpcStats {
     public final static StatsBuilder JOE_NPC = new StatsBuilder()
diff --git a/src/main/java/com/comandante/creeper/model/Player.java b/src/main/java/com/comandante/creeper/player/Player.java
similarity index 94%
rename from src/main/java/com/comandante/creeper/model/Player.java
rename to src/main/java/com/comandante/creeper/player/Player.java
index 9cf22a9c346ff592de90e8894ee632ce7e3b43d5..f46abed8ac22b20f4b84183ccdbf799c7295bb4a 100644
--- a/src/main/java/com/comandante/creeper/model/Player.java
+++ b/src/main/java/com/comandante/creeper/player/Player.java
@@ -1,8 +1,9 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.player;
 
 
 import com.comandante.creeper.Main;
 import com.comandante.creeper.managers.GameManager;
+import com.comandante.creeper.entity.CreeperEntity;
 import com.google.common.base.Optional;
 import org.apache.commons.codec.binary.Base64;
 import org.jboss.netty.channel.Channel;
diff --git a/src/main/java/com/comandante/creeper/managers/PlayerManager.java b/src/main/java/com/comandante/creeper/player/PlayerManager.java
similarity index 93%
rename from src/main/java/com/comandante/creeper/managers/PlayerManager.java
rename to src/main/java/com/comandante/creeper/player/PlayerManager.java
index 15e3846e99904fcfb1352b4db93bdc50fdc45da8..3b866b3c82e509e63d8e80ab35fbaef8f4020178 100644
--- a/src/main/java/com/comandante/creeper/managers/PlayerManager.java
+++ b/src/main/java/com/comandante/creeper/player/PlayerManager.java
@@ -1,11 +1,8 @@
-package com.comandante.creeper.managers;
+package com.comandante.creeper.player;
 
 
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.PlayerMetadata;
-import com.comandante.creeper.model.PlayerMetadataSerializer;
-import com.comandante.creeper.model.Room;
-import com.comandante.creeper.model.Stats;
+import com.comandante.creeper.room.Room;
+import com.comandante.creeper.stat.Stats;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Sets;
 import org.apache.commons.codec.binary.Base64;
diff --git a/src/main/java/com/comandante/creeper/model/PlayerMetadata.java b/src/main/java/com/comandante/creeper/player/PlayerMetadata.java
similarity index 95%
rename from src/main/java/com/comandante/creeper/model/PlayerMetadata.java
rename to src/main/java/com/comandante/creeper/player/PlayerMetadata.java
index 95aedbc6d175f3b0bcadb3934da0f8c50a681e23..7483a8a88eb0838f55ac5516a69b947d56711651 100644
--- a/src/main/java/com/comandante/creeper/model/PlayerMetadata.java
+++ b/src/main/java/com/comandante/creeper/player/PlayerMetadata.java
@@ -1,6 +1,8 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.player;
 
 
+import com.comandante.creeper.stat.Stats;
+
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/src/main/java/com/comandante/creeper/model/PlayerMetadataSerializer.java b/src/main/java/com/comandante/creeper/player/PlayerMetadataSerializer.java
similarity index 94%
rename from src/main/java/com/comandante/creeper/model/PlayerMetadataSerializer.java
rename to src/main/java/com/comandante/creeper/player/PlayerMetadataSerializer.java
index d515f1ec4dd99ac713c58cf9de39b20fa6154e9c..17691677b890e0d1daf69f74791699f61cd88ffe 100644
--- a/src/main/java/com/comandante/creeper/model/PlayerMetadataSerializer.java
+++ b/src/main/java/com/comandante/creeper/player/PlayerMetadataSerializer.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.player;
 
 import com.google.gson.GsonBuilder;
 import org.mapdb.Serializer;
diff --git a/src/main/java/com/comandante/creeper/model/Movement.java b/src/main/java/com/comandante/creeper/player/PlayerMovement.java
similarity index 73%
rename from src/main/java/com/comandante/creeper/model/Movement.java
rename to src/main/java/com/comandante/creeper/player/PlayerMovement.java
index 62c8060896547b85e7c194dd1677ff24c1b22ed9..845f71e583425c94fa9f32286744fa24cdf82dec 100644
--- a/src/main/java/com/comandante/creeper/model/Movement.java
+++ b/src/main/java/com/comandante/creeper/player/PlayerMovement.java
@@ -1,8 +1,8 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.player;
 
 import com.comandante.creeper.command.commands.MovementCommand;
 
-public class Movement {
+public class PlayerMovement {
 
     private final Player player;
     private final Integer sourceRoomId;
@@ -11,12 +11,12 @@ public class Movement {
     private final String roomExitMessage;
     private final String returnDirection;
 
-    public Movement(Player player,
-                    Integer sourceRoomId,
-                    Integer destinationRoomId,
-                    MovementCommand command,
-                    String roomExitMessage,
-                    String returnDirection) {
+    public PlayerMovement(Player player,
+                          Integer sourceRoomId,
+                          Integer destinationRoomId,
+                          MovementCommand command,
+                          String roomExitMessage,
+                          String returnDirection) {
         this.player = player;
         this.sourceRoomId = sourceRoomId;
         this.destinationRoomId = destinationRoomId;
diff --git a/src/main/java/com/comandante/creeper/model/PlayerStats.java b/src/main/java/com/comandante/creeper/player/PlayerStats.java
similarity index 82%
rename from src/main/java/com/comandante/creeper/model/PlayerStats.java
rename to src/main/java/com/comandante/creeper/player/PlayerStats.java
index 627298acf0484024a2f238ebccb1b3df9016434a..c998797bd1ec9e6da0919984305fc08835b3343b 100644
--- a/src/main/java/com/comandante/creeper/model/PlayerStats.java
+++ b/src/main/java/com/comandante/creeper/player/PlayerStats.java
@@ -1,6 +1,8 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.player;
 
 
+import com.comandante.creeper.stat.StatsBuilder;
+
 public class PlayerStats {
 
     public final static StatsBuilder DEFAULT_PLAYER = new StatsBuilder()
diff --git a/src/main/java/com/comandante/creeper/model/BasicRoom.java b/src/main/java/com/comandante/creeper/room/BasicRoom.java
similarity index 94%
rename from src/main/java/com/comandante/creeper/model/BasicRoom.java
rename to src/main/java/com/comandante/creeper/room/BasicRoom.java
index bc27dcad9ff4725b32449b96d688563d0d5acea7..49037e033c9cfff4113ff27bc32070932321d606 100644
--- a/src/main/java/com/comandante/creeper/model/BasicRoom.java
+++ b/src/main/java/com/comandante/creeper/room/BasicRoom.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.room;
 
 import com.google.common.base.Optional;
 
diff --git a/src/main/java/com/comandante/creeper/model/Room.java b/src/main/java/com/comandante/creeper/room/Room.java
similarity index 95%
rename from src/main/java/com/comandante/creeper/model/Room.java
rename to src/main/java/com/comandante/creeper/room/Room.java
index bbf17355d3024649a2d1ca636ed8773860a78541..6d2a50bec06a22d93505ddd8670d1838a27045cd 100644
--- a/src/main/java/com/comandante/creeper/model/Room.java
+++ b/src/main/java/com/comandante/creeper/room/Room.java
@@ -1,6 +1,8 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.room;
 
-import com.comandante.creeper.Items.ItemSpawner;
+import com.comandante.creeper.entity.CreeperEntity;
+import com.comandante.creeper.spawner.ItemSpawner;
+import com.comandante.creeper.spawner.NpcSpawner;
 import com.google.common.base.Optional;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
diff --git a/src/main/java/com/comandante/creeper/builder/RoomBuilders.java b/src/main/java/com/comandante/creeper/room/RoomBuilders.java
similarity index 98%
rename from src/main/java/com/comandante/creeper/builder/RoomBuilders.java
rename to src/main/java/com/comandante/creeper/room/RoomBuilders.java
index 0995b73a3bbd05d3bf667188901d50e84b4ec1cc..eb341a334a923bbd82f99a3f8255edf816e7d3d7 100644
--- a/src/main/java/com/comandante/creeper/builder/RoomBuilders.java
+++ b/src/main/java/com/comandante/creeper/room/RoomBuilders.java
@@ -1,13 +1,12 @@
-package com.comandante.creeper.builder;
+package com.comandante.creeper.room;
 
-import com.comandante.creeper.Items.SpawnRule;
-import com.comandante.creeper.Items.ItemSpawner;
 import com.comandante.creeper.Items.ItemType;
-import com.comandante.creeper.managers.EntityManager;
+import com.comandante.creeper.entity.EntityManager;
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.BasicRoom;
-import com.comandante.creeper.model.NpcSpawner;
 import com.comandante.creeper.npc.Derper;
+import com.comandante.creeper.spawner.ItemSpawner;
+import com.comandante.creeper.spawner.NpcSpawner;
+import com.comandante.creeper.spawner.SpawnRule;
 import com.google.common.base.Optional;
 
 /**
diff --git a/src/main/java/com/comandante/creeper/managers/RoomManager.java b/src/main/java/com/comandante/creeper/room/RoomManager.java
similarity index 89%
rename from src/main/java/com/comandante/creeper/managers/RoomManager.java
rename to src/main/java/com/comandante/creeper/room/RoomManager.java
index 62d0a8978fa42f10062192b9ea44afdab900296e..ebf3dd866258ba464c97c4c04f34a5921c714f14 100644
--- a/src/main/java/com/comandante/creeper/managers/RoomManager.java
+++ b/src/main/java/com/comandante/creeper/room/RoomManager.java
@@ -1,7 +1,6 @@
-package com.comandante.creeper.managers;
+package com.comandante.creeper.room;
 
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.Player;
 import com.google.common.base.Optional;
 
 import java.util.Iterator;
diff --git a/src/main/java/com/comandante/creeper/server/ChannelUtils.java b/src/main/java/com/comandante/creeper/server/ChannelUtils.java
index 359b586ad5b653f4390ef3cabdf209a58f0c72c4..a45f54fe20e4b39e644e9697f0a978d0db32addf 100644
--- a/src/main/java/com/comandante/creeper/server/ChannelUtils.java
+++ b/src/main/java/com/comandante/creeper/server/ChannelUtils.java
@@ -1,9 +1,9 @@
 package com.comandante.creeper.server;
 
-import com.comandante.creeper.managers.PlayerManager;
-import com.comandante.creeper.managers.RoomManager;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.Room;
+import com.comandante.creeper.player.PlayerManager;
+import com.comandante.creeper.room.RoomManager;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.room.Room;
 
 import java.util.Set;
 
diff --git a/src/main/java/com/comandante/creeper/model/Color.java b/src/main/java/com/comandante/creeper/server/Color.java
similarity index 97%
rename from src/main/java/com/comandante/creeper/model/Color.java
rename to src/main/java/com/comandante/creeper/server/Color.java
index b845ace7eb6c7a5445cb23dcf22130a47710830d..f538b27eea1ec8cd7b4e08c6a6f714f540b80c06 100644
--- a/src/main/java/com/comandante/creeper/model/Color.java
+++ b/src/main/java/com/comandante/creeper/server/Color.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.server;
 
 import org.fusesource.jansi.Ansi;
 
diff --git a/src/main/java/com/comandante/creeper/server/CreeperMapDBAuthenticator.java b/src/main/java/com/comandante/creeper/server/CreeperMapDBAuthenticator.java
index 52b609f04216052ccbc6a513fb3e21191f1106f3..3235dc118e36ce84d96a63adc93bfcb61dc367e3 100644
--- a/src/main/java/com/comandante/creeper/server/CreeperMapDBAuthenticator.java
+++ b/src/main/java/com/comandante/creeper/server/CreeperMapDBAuthenticator.java
@@ -2,8 +2,8 @@ package com.comandante.creeper.server;
 
 import com.comandante.creeper.Main;
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.Player;
-import com.comandante.creeper.model.PlayerMetadata;
+import com.comandante.creeper.player.Player;
+import com.comandante.creeper.player.PlayerMetadata;
 import org.jboss.netty.channel.Channel;
 
 public class CreeperMapDBAuthenticator implements CreeperAuthenticator {
diff --git a/src/main/java/com/comandante/creeper/server/CreeperServerHandler.java b/src/main/java/com/comandante/creeper/server/CreeperServerHandler.java
index d4f6d652faf3d3bfbfe5484d3e733b26b1020f41..dffe3e5750409c2517bff08bf6dbadb462502470 100644
--- a/src/main/java/com/comandante/creeper/server/CreeperServerHandler.java
+++ b/src/main/java/com/comandante/creeper/server/CreeperServerHandler.java
@@ -10,7 +10,7 @@ import org.jboss.netty.channel.ExceptionEvent;
 import org.jboss.netty.channel.MessageEvent;
 import org.jboss.netty.channel.SimpleChannelUpstreamHandler;
 
-import static com.comandante.creeper.model.Color.RESET;
+import static com.comandante.creeper.server.Color.RESET;
 
 public class CreeperServerHandler extends SimpleChannelUpstreamHandler {
 
diff --git a/src/main/java/com/comandante/creeper/server/RandomMOTD.java b/src/main/java/com/comandante/creeper/server/RandomMOTD.java
new file mode 100644
index 0000000000000000000000000000000000000000..e27178febaf2e1321ec2500b6238499716808297
--- /dev/null
+++ b/src/main/java/com/comandante/creeper/server/RandomMOTD.java
@@ -0,0 +1,7 @@
+package com.comandante.creeper.server;
+
+
+public class RandomMOTD {
+
+
+}
diff --git a/src/main/java/com/comandante/creeper/Items/ItemSpawner.java b/src/main/java/com/comandante/creeper/spawner/ItemSpawner.java
similarity index 93%
rename from src/main/java/com/comandante/creeper/Items/ItemSpawner.java
rename to src/main/java/com/comandante/creeper/spawner/ItemSpawner.java
index 0ec4228697a8f551b7d47d9ac98932024a8822cf..90c03b4acf21ec0e10ab9b0e2f1ffaf3ecd2011b 100644
--- a/src/main/java/com/comandante/creeper/Items/ItemSpawner.java
+++ b/src/main/java/com/comandante/creeper/spawner/ItemSpawner.java
@@ -1,7 +1,9 @@
-package com.comandante.creeper.Items;
+package com.comandante.creeper.spawner;
 
+import com.comandante.creeper.Items.Item;
+import com.comandante.creeper.Items.ItemType;
 import com.comandante.creeper.managers.GameManager;
-import com.comandante.creeper.model.CreeperEntity;
+import com.comandante.creeper.entity.CreeperEntity;
 
 import java.util.Random;
 import java.util.Set;
diff --git a/src/main/java/com/comandante/creeper/model/NpcSpawner.java b/src/main/java/com/comandante/creeper/spawner/NpcSpawner.java
similarity index 96%
rename from src/main/java/com/comandante/creeper/model/NpcSpawner.java
rename to src/main/java/com/comandante/creeper/spawner/NpcSpawner.java
index 1d9694e5c795bba54e5bdb7245c1c84a50b75e8a..651c2ae853399be73c636d7cc01aaa020ed69645 100644
--- a/src/main/java/com/comandante/creeper/model/NpcSpawner.java
+++ b/src/main/java/com/comandante/creeper/spawner/NpcSpawner.java
@@ -1,7 +1,7 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.spawner;
 
 
-import com.comandante.creeper.Items.SpawnRule;
+import com.comandante.creeper.entity.CreeperEntity;
 import com.comandante.creeper.managers.GameManager;
 import com.comandante.creeper.npc.Npc;
 
diff --git a/src/main/java/com/comandante/creeper/Items/SpawnRule.java b/src/main/java/com/comandante/creeper/spawner/SpawnRule.java
similarity index 95%
rename from src/main/java/com/comandante/creeper/Items/SpawnRule.java
rename to src/main/java/com/comandante/creeper/spawner/SpawnRule.java
index 5ce18a490478aa4e8b9485fee94a1ed86377d20f..37d699b13a81220d56bcf8e4e4fb86659f0c711c 100644
--- a/src/main/java/com/comandante/creeper/Items/SpawnRule.java
+++ b/src/main/java/com/comandante/creeper/spawner/SpawnRule.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.Items;
+package com.comandante.creeper.spawner;
 
 import com.google.common.base.Optional;
 
diff --git a/src/main/java/com/comandante/creeper/model/StatType.java b/src/main/java/com/comandante/creeper/stat/StatType.java
similarity index 88%
rename from src/main/java/com/comandante/creeper/model/StatType.java
rename to src/main/java/com/comandante/creeper/stat/StatType.java
index a9e64f4aefdf980468472c5ce9ac56844b9d6d47..341d498ee1919d4589e05fa0d876897a60dd91ba 100644
--- a/src/main/java/com/comandante/creeper/model/StatType.java
+++ b/src/main/java/com/comandante/creeper/stat/StatType.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.stat;
 
 public enum StatType {
     STRENGTH(1),
diff --git a/src/main/java/com/comandante/creeper/model/Stats.java b/src/main/java/com/comandante/creeper/stat/Stats.java
similarity index 98%
rename from src/main/java/com/comandante/creeper/model/Stats.java
rename to src/main/java/com/comandante/creeper/stat/Stats.java
index 48843191f78f256786ebeccfe1c909f4e2d0c37b..0db340c278eec32f38e2be7b327043f15dc497b6 100644
--- a/src/main/java/com/comandante/creeper/model/Stats.java
+++ b/src/main/java/com/comandante/creeper/stat/Stats.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.stat;
 
 import java.io.Serializable;
 
diff --git a/src/main/java/com/comandante/creeper/model/StatsBuilder.java b/src/main/java/com/comandante/creeper/stat/StatsBuilder.java
similarity index 97%
rename from src/main/java/com/comandante/creeper/model/StatsBuilder.java
rename to src/main/java/com/comandante/creeper/stat/StatsBuilder.java
index 8794d21515996a9240376663588b0f20d62f1cd0..e3330ab22dd9d5d8556be9ae23587a77acd61ca8 100644
--- a/src/main/java/com/comandante/creeper/model/StatsBuilder.java
+++ b/src/main/java/com/comandante/creeper/stat/StatsBuilder.java
@@ -1,4 +1,4 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.stat;
 
 public class StatsBuilder {
     private int strength;
diff --git a/src/main/java/com/comandante/creeper/model/StatsTester.java b/src/main/java/com/comandante/creeper/stat/StatsTester.java
similarity index 96%
rename from src/main/java/com/comandante/creeper/model/StatsTester.java
rename to src/main/java/com/comandante/creeper/stat/StatsTester.java
index 7713d30fe338b8759993303a46f08bc81270c905..758804745d3ca5fdcba27b1cec53beafede85b00 100644
--- a/src/main/java/com/comandante/creeper/model/StatsTester.java
+++ b/src/main/java/com/comandante/creeper/stat/StatsTester.java
@@ -1,4 +1,7 @@
-package com.comandante.creeper.model;
+package com.comandante.creeper.stat;
+
+import com.comandante.creeper.npc.NpcStats;
+import com.comandante.creeper.player.PlayerStats;
 
 import java.util.Random;