unexported finished, eval and legalMoves