Major client update - mainly to get the repository up to date with all the local changes.
Added "Net" sub-folder, which deals with network code. Contains message handlers, which are the client side way of dispatching incoming messages to sub-classes. This keeps things relatively clean. Also added "ServerConnection" class, which is a wrapper to a server. It's quite probable that a lot of this code will move to a separate package eventually, or to the "shared" lib.
Added "services" folder, which handles game services. These are objects that manage objects or functionality that doesn't want to be static/global. This way a module can be passed a service to make its dependency clear, as opposed to calling a method on a global object or a static function.
Added more screens and states. These are Pangolin based "GameScreen" objects. They need to be placed in the "screens" folder eventually - "states" is just a holding ground.
NOTE: There is some super-rough code in this commit. It works, but only just, and there is test code scattered around. You have been warned ;)