Ethereal is wrong -- if mate has been delivered, there is no draw by fifty move rule. we already have the ``inCheck`` flag. We can use ``genAllLegalMoves()`` as a quick hack ... At some point we should have a ``moveIsLegal`` function ...