Generalize Board.canPlay to check group liberties after the hypothetical move. Fixes bug where some positions were wrongly disallowed.