add game state and some tests