Add tests for is_legal_move