formatting: spaces out handlers in User constructor
throws an error from Challenge if initial time is 0
adds PlayerConnected and PlayerDisconnected events to Game
adds Disconnected and Connected events to Bot (never fired but required for Game)
adds Disconnected and Connected events to Player - relayed from User
moves events in User so that they're available for the Player
adds a try/catch to User._createChallenge to send a failure message; changes challenge
messages (/challenge/create/success instead of /current_challenge, /current_challenge_expired
instead of /expired)
adds Time require to Challenge
corrects reference to player in Game._setupPlayers; refactors to not use Colour.forEach