moved gamestates into their own file