simplified allowedMoves and indicateAllowedMoves and isAllowedMove