fancied up GameState a little
simplify moves signal by not isolating moves