decrementing half-move clock in undoMove() needs to check for zero first..