moved all game initialization steps and factory stuff into the game init method.
New feature: now when the player is at a boundary, the button will no longer show.