Merge pull request #54 from philipwhiuk/character-selection

Update 3d-game-world with character-selection changes
Character loading and exit handling

* Merged back character loading from terrain branch
* Merged back method to get PC's account
* Added Zone field to GameCharacter (PC & NPC) as a Long
* Added outline handling of character exit in the GameService.
Adjusting checks to separate error cases

Splitting character not found from character belonging to a different
player.
Implement hashcode and equals methods for Account
Add ID field to character data
Player Character javadoc
Handle enter game (stub) and clean imports

* Pulled ENTER_GAME from being processed by LobbyScreen
* Created stub method to handle it
* Cleaned up imports
Refactor Lobby Character data into new class

Split character data in the lobby from the character data object used
while in game to resolve `toString()` issue, eliminate future memory
issues and allow better object management.
Refactoring out common functions

* Moving building of network messages from the GameClient to a utility
class to respond to the growing size of the GameClient class.
* Wrote a lot more Javadoc for the GameClient.
* Refactored bootstrap code into a separate method
* Removed all the useless arguments from
`handleAuthMessageInRegisterState`
Initial work on enterGame
Fix game screen name and render game

* Fixing the main in-game UI screen initial screen name to match the XML
* Switching state when enterGame called.
* Making it render the game when in GameState.
* Adding render function and basic test quad.
Initial work on camera and movement controls

* Refactored a few messages passing data to the game
* Implemented a basic game update method to send movement data to the
server.
* Created a stub implementation of movement control handling
* Created a stub implementation the camera control
* Updated network messages to send player movement direction to the
server.
Refactoring and initial console work

* Created a new interface indicating that a screen can handle chat
messages
* Moved the handling of in-game chat messages to the GameScreen
* Created an initial attempt at a console for the game state.
Added getUsername call

For future work.
Removing deprecated usages

Fixing references to deprecated bits of Nifty GUI.
More deprecated usage fixes
Merge pull request #58 from philipwhiuk/3d-game-world

Merge '3d-game-world' into develop