diff --git a/lib/ucoinpy/__init__.py b/lib/ucoinpy/__init__.py
deleted file mode 100644
index 0eb79a469b6c7977fe9734e20b2a5163b63f9472..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/__init__.py
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
diff --git a/lib/ucoinpy/bma/__init__.py b/lib/ucoinpy/bma/__init__.py
deleted file mode 100644
index fbd95eaa0c535c5778860f71d60c595cec28deca..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/bma/__init__.py
+++ /dev/null
@@ -1,139 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
-
-
-__all__ = ['api']
-
-__author__      = 'Caner Candan'
-__version__     = '0.10.0'
-__nonsense__    = 'uCoin'
-
-import requests, logging, json
-# import pylibscrypt
-
-logger = logging.getLogger("ucoin")
-
-
-class ConnectionHandler(object):
-    """Helper class used by other API classes to ease passing server connection information."""
-
-    def __init__(self, server, port):
-        """
-        Arguments:
-        - `server`: server hostname
-        - `port`: port number
-        """
-
-        self.server = server
-        self.port = port
-
-    def __str__(self):
-        return 'connection info: %s:%d' % (self.server, self.port)
-
-
-class API(object):
-    """APIRequest is a class used as an interface. The intermediate derivated classes are the modules and the leaf classes are the API requests."""
-
-    def __init__(self, connection_handler, module):
-        """
-        Asks a module in order to create the url used then by derivated classes.
-
-        Arguments:
-        - `module`: module name
-        - `connection_handler`: connection handler
-        """
-
-        self.module = module
-        self.connection_handler = connection_handler
-        self.headers = {}
-
-    def reverse_url(self, path):
-        """
-        Reverses the url using self.url and path given in parameter.
-
-        Arguments:
-        - `path`: the request path
-        """
-
-        server, port = self.connection_handler.server, self.connection_handler.port
-
-        url = 'http://%s:%d/%s' % (server, port, self.module)
-        return url + path
-
-    def get(self, **kwargs):
-        """wrapper of overloaded __get__ method."""
-
-        return self.__get__(**kwargs)
-
-    def post(self, **kwargs):
-        """wrapper of overloaded __post__ method."""
-
-        logger.debug('do some work with')
-
-        data = self.__post__(**kwargs)
-
-        logger.debug('and send back')
-
-        return data
-
-    def __get__(self, **kwargs):
-        """interface purpose for GET request"""
-
-        pass
-
-    def __post__(self, **kwargs):
-        """interface purpose for POST request"""
-
-        pass
-
-    def requests_get(self, path, **kwargs):
-        """
-        Requests GET wrapper in order to use API parameters.
-
-        Arguments:
-        - `path`: the request path
-        """
-
-        response = requests.get(self.reverse_url(path), params=kwargs, headers=self.headers)
-
-        if response.status_code != 200:
-            raise ValueError('status code != 200 => %d (%s)' % (response.status_code, response.text))
-
-        return response
-
-    def requests_post(self, path, **kwargs):
-        """
-        Requests POST wrapper in order to use API parameters.
-
-        Arguments:
-        - `path`: the request path
-        """
-
-        response = requests.post(self.reverse_url(path), data=kwargs, headers=self.headers)
-
-        if response.status_code != 200:
-            raise ValueError('status code != 200 => %d (%s)' % (response.status_code, response.text))
-
-        return response
-
-    def merkle_easy_parser(self, path, begin=None, end=None):
-        root = self.requests_get(path, leaves='true').json()
-        for leaf in root['leaves'][begin:end]:
-            yield self.requests_get(path, leaf=leaf).json()['leaf']
-
-from . import network, blockchain, tx, wot
diff --git a/lib/ucoinpy/bma/blockchain/__init__.py b/lib/ucoinpy/bma/blockchain/__init__.py
deleted file mode 100644
index e4e02c458a3b9b8d3bda60b9408c36261165253c..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/bma/blockchain/__init__.py
+++ /dev/null
@@ -1,95 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
-
-from .. import API, logging
-
-logger = logging.getLogger("ucoin/blockchain")
-
-
-class Blockchain(API):
-    def __init__(self, connection_handler, module='blockchain'):
-        super(Blockchain, self).__init__(connection_handler, module)
-
-
-class Parameters(Blockchain):
-    """GET the blockchain parameters used by this node."""
-
-    def __get__(self, **kwargs):
-        return self.requests_get('/parameters', **kwargs).json()
-
-
-class Membership(Blockchain):
-    """POST a Membership document."""
-
-    def __post__(self, **kwargs):
-        assert 'membership' in kwargs
-
-        return self.requests_post('/membership', **kwargs).json()
-
-
-class Block(Blockchain):
-    """GET/POST a block from/to the blockchain."""
-
-    def __init__(self, connection_handler, number=None):
-        """
-        Use the number parameter in order to select a block number.
-
-        Arguments:
-        - `number`: block number to select
-        """
-
-        super(Block, self).__init__(connection_handler)
-
-        self.number = number
-
-    def __get__(self, **kwargs):
-        assert self.number is not None
-        return self.requests_get('/block/%d' % self.number, **kwargs).json()
-
-    def __post__(self, **kwargs):
-        assert 'block' in kwargs
-        assert 'signature' in kwargs
-
-        return self.requests_post('/block', **kwargs).json()
-
-
-class Current(Blockchain):
-    """GET, same as block/[number], but return last accepted block."""
-
-    def __get__(self, **kwargs):
-        return self.requests_get('/current', **kwargs).json()
-
-
-class Hardship(Blockchain):
-    """GET hardship level for given member's fingerprint for writing next block."""
-
-    def __init__(self, connection_handler, fingerprint):
-        """
-        Use the number parameter in order to select a block number.
-
-        Arguments:
-        - `fingerprint`: member fingerprint
-        """
-
-        super(Hardship, self).__init__(connection_handler)
-
-        self.fingerprint = fingerprint
-
-    def __get__(self, **kwargs):
-        assert self.fingerprint is not None
-        return self.requests_get('/hardship/%s' % self.fingerprint.upper(), **kwargs).json()
diff --git a/lib/ucoinpy/bma/network/__init__.py b/lib/ucoinpy/bma/network/__init__.py
deleted file mode 100644
index 3d6c73ec6eebd9d0f96f32c94457c0b4084e3685..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/bma/network/__init__.py
+++ /dev/null
@@ -1,35 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
-
-from .. import API, logging
-
-logger = logging.getLogger("ucoin/network")
-
-
-class Network(API):
-    def __init__(self, connection_handler, module='network'):
-        super(Network, self).__init__(connection_handler, module)
-
-
-class Peering(Network):
-    """GET peering information about a peer."""
-
-    def __get__(self, **kwargs):
-        return self.requests_get('/peering', **kwargs).json()
-
-from . import peering
diff --git a/lib/ucoinpy/bma/network/peering/__init__.py b/lib/ucoinpy/bma/network/peering/__init__.py
deleted file mode 100644
index 3ad7cde34997eed39cced842659f2af92b0fe37d..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/bma/network/peering/__init__.py
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
-
-from .. import Network, logging
-
-logger = logging.getLogger("ucoin/network/peering")
-
-
-class Base(Network):
-    def __init__(self, connection_handler):
-        super(Base, self).__init__(connection_handler, 'network/peering')
-
-
-class Peers(Base):
-    """GET peering entries of every node inside the currency network."""
-
-    def __get__(self, **kwargs):
-        """creates a generator with one peering entry per iteration."""
-
-        return self.merkle_easy_parser('/peers')
-
-    def __post__(self, **kwargs):
-        assert 'entry' in kwargs
-        assert 'signature' in kwargs
-
-        return self.requests_post('/peers', **kwargs).json()
-
-
-class Status(Base):
-    """POST a network status document to this node in order notify of its status."""
-
-    def __post__(self, **kwargs):
-        assert 'status' in kwargs
-        assert 'signature' in kwargs
-
-        return self.requests_post('/status', **kwargs).json()
diff --git a/lib/ucoinpy/bma/tx/__init__.py b/lib/ucoinpy/bma/tx/__init__.py
deleted file mode 100644
index a7adc5f37f58bdf0858e1128c47925e47a7a9e4a..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/bma/tx/__init__.py
+++ /dev/null
@@ -1,44 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
-
-from .. import API, logging
-
-logger = logging.getLogger("ucoin/tx")
-
-
-class Tx(API):
-    def __init__(self, connection_handler, module='tx'):
-        super(Tx, self).__init__(connection_handler, module)
-
-
-class Process(Tx):
-    """POST a transaction."""
-
-    def __post__(self, **kwargs):
-        assert 'transaction' in kwargs
-        assert 'signature' in kwargs
-
-        return self.requests_post('/process', **kwargs).json()
-
-
-class Sources(Tx):
-    """Get transaction sources."""
-
-    def __get__(self, **kwargs):
-        assert self.pubkey is not None
-        return self.requests_get('/sources/%d' % self.pubkey, **kwargs).json()
diff --git a/lib/ucoinpy/bma/wot/__init__.py b/lib/ucoinpy/bma/wot/__init__.py
deleted file mode 100644
index aa1ca0de576a79ab4f024c7642388342147065d3..0000000000000000000000000000000000000000
--- a/lib/ucoinpy/bma/wot/__init__.py
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Authors:
-# Caner Candan <caner@candan.fr>, http://caner.candan.fr
-#
-
-from .. import API, logging
-
-logger = logging.getLogger("ucoin/wot")
-
-
-class WOT(API):
-    def __init__(self, connection_handler, module='wot'):
-        super(WOT, self).__init__(connection_handler, module)
-
-
-class Add(WOT):
-    """POST Public key data."""
-
-    def __post__(self, **kwargs):
-        assert 'pubkey' in kwargs
-        assert 'self' in kwargs
-        assert 'other' in kwargs
-
-        return self.requests_post('/add', **kwargs).json()
-
-
-class Lookup(WOT):
-    """GET Public key data."""
-
-    def __init__(self, connection_handler, search, module='wot'):
-        super(WOT, self).__init__(connection_handler, module)
-
-        self.search = search
-
-    def __get__(self, **kwargs):
-        assert self.search is not None
-
-        return self.requests_get('/lookup/%s' % self.search, **kwargs).json()