Split Client into PlayerClient and SpectatorClient.
Moved more methods to GameHandler in order to empower the SpectatorHandler.
Renamed "leave" message to "disconnect".
Added disconnect reasons.
Move player joining handler to separate method.
Ensure player disconnects due to heart beat timeouts are handled at most once.
Merge pull request #16 from tgoossens/spectator

Distinguish between playing and spectating a game. Fixes #10.
Keep track of which players have already found their objects.
Moved found object and team number into PlayerState.
Retain PlayerStates of missing players.
Restore from missing player when rejoining.
Added to-do for when team communication will be implemented.
Merge pull request #18 from tgoossens/found-object

Keep track of which players have already found their objects.
Started working on team communication.
Implemented team communication establishment.
Fixed typo in JavaDoc regarding the conventional orientation angle of a player's position.
Fixed team topics not being properly parsed.
Merge pull request #19 from tgoossens/pingpong

Handshake when entering the team channel.
Normalized line endings
Merge remote-tracking branch 'upstream/master'

Conflicts:
	.gitignore
	src/peno/htttp/DisconnectReason.java
	src/peno/htttp/GameHandler.java
	src/peno/htttp/PlayerClient.java
	src/peno/htttp/PlayerHandler.java
	src/peno/htttp/SpectatorClient.java
	src/peno/htttp/SpectatorHandler.java
	src/peno/htttp/impl/PlayerRegister.java
	src/peno/htttp/impl/PlayerState.java
	src/peno/htttp/impl/Requester.java