Gamestate classes for arbitrary games