assign matchTimeout to a variable in order to clear it after a game has been loaded
call clearInterval on matchTimer in order to stop it from kicking out the initiating player even after a successful match has been found
remove outout_player_data from GameEngine::Cache; it makes no sense for that object
add an IO module to GameEngine to handle updating clients with the latest gamestate
refactor GamesController to use IO module to send back client data