catch all fatal server errors and notify the main thread
Fixes nasty bug in previous commit (self.alive = False at end of TurnBasedServer.serve) and define a game_id (static constant) as well as a game_name (will allow player to set the name of their game in a future commit). Various tidy up.