diff --git a/onionr/communicator/__init__.py b/onionr/communicator/__init__.py
index 50d889e4..eca47e95 100755
--- a/onionr/communicator/__init__.py
+++ b/onionr/communicator/__init__.py
@@ -20,7 +20,8 @@
 '''
 import sys, os, time
 import config, logger
-import onionrexceptions, onionrpeers, onionrblockapi as block
+import onionrexceptions, onionrpeers
+from onionrblocks import onionrblockapi as block
 from onionrplugins import onionrevents as events
 import onionrplugins as plugins
 from . import onlinepeers, uploadqueue
@@ -32,7 +33,8 @@ from communicatorutils import daemonqueuehandler, announcenode, deniableinserts
 from communicatorutils import cooldownpeer, housekeeping, netcheck
 from onionrutils import localcommand, epoch
 from etc import humanreadabletime
-import onionrservices, filepaths, storagecounter
+import onionrservices, filepaths
+from onionrblocks import storagecounter
 from coredb import daemonqueue, dbfiles
 from utils import gettransports
 from netcontroller import NetController
diff --git a/onionr/communicatorutils/downloadblocks/__init__.py b/onionr/communicatorutils/downloadblocks/__init__.py
index cf6b5998..87ea6c9c 100755
--- a/onionr/communicatorutils/downloadblocks/__init__.py
+++ b/onionr/communicatorutils/downloadblocks/__init__.py
@@ -23,7 +23,8 @@ from onionrutils import blockmetadata, stringvalidators, validatemetadata
 from coredb import blockmetadb
 from . import shoulddownload
 from communicator import peeraction, onlinepeers
-import onionrcrypto, onionrstorage, onionrblacklist, storagecounter
+import onionrcrypto, onionrstorage
+from onionrblocks import onionrblacklist, storagecounter
 def download_blocks_from_communicator(comm_inst):
     '''Use Onionr communicator instance to download blocks in the communicator's queue'''
     assert isinstance(comm_inst, communicator.OnionrCommunicatorDaemon)
diff --git a/onionr/communicatorutils/downloadblocks/shoulddownload.py b/onionr/communicatorutils/downloadblocks/shoulddownload.py
index 5d07c21c..b59ed47f 100644
--- a/onionr/communicatorutils/downloadblocks/shoulddownload.py
+++ b/onionr/communicatorutils/downloadblocks/shoulddownload.py
@@ -18,7 +18,8 @@
     along with this program.  If not, see .
 '''
 from coredb import blockmetadb
-import onionrblacklist
+from onionrblocks import onionrblacklist
+
 def should_download(comm_inst, block_hash):
     blacklist = onionrblacklist.OnionrBlackList()
     ret_data = True
diff --git a/onionr/communicatorutils/housekeeping.py b/onionr/communicatorutils/housekeeping.py
index 135ad506..55e73000 100755
--- a/onionr/communicatorutils/housekeeping.py
+++ b/onionr/communicatorutils/housekeeping.py
@@ -24,7 +24,7 @@ from onionrutils import epoch
 from coredb import blockmetadb, dbfiles
 import onionrstorage
 from onionrstorage import removeblock
-import onionrblacklist
+from onionrblocks import onionrblacklist
 
 def __remove_from_upload(comm_inst, block_hash: str):
     try:
diff --git a/onionr/communicatorutils/lookupblocks.py b/onionr/communicatorutils/lookupblocks.py
index 3e1ade6a..57acfecf 100755
--- a/onionr/communicatorutils/lookupblocks.py
+++ b/onionr/communicatorutils/lookupblocks.py
@@ -22,7 +22,7 @@ from onionrutils import stringvalidators, epoch
 from communicator import peeraction, onlinepeers
 from coredb import blockmetadb
 from utils import reconstructhash
-import onionrblacklist
+from onionrblocks import onionrblacklist
 blacklist = onionrblacklist.OnionrBlackList()
 def lookup_blocks_from_communicator(comm_inst):
     logger.info('Looking up new blocks')
diff --git a/onionr/communicatorutils/servicecreator.py b/onionr/communicatorutils/servicecreator.py
index f1dbb78d..9ff031d9 100755
--- a/onionr/communicatorutils/servicecreator.py
+++ b/onionr/communicatorutils/servicecreator.py
@@ -17,7 +17,8 @@
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see .
 '''
-import communicator, onionrblockapi
+import communicator
+from onionrblocks import onionrblockapi
 import logger
 from onionrutils import stringvalidators, bytesconverter
 from coredb import blockmetadb
diff --git a/onionr/communicatorutils/uploadblocks/__init__.py b/onionr/communicatorutils/uploadblocks/__init__.py
index fd776573..a27a137f 100755
--- a/onionr/communicatorutils/uploadblocks/__init__.py
+++ b/onionr/communicatorutils/uploadblocks/__init__.py
@@ -24,7 +24,7 @@ import threading
 import logger
 from communicatorutils import proxypicker
 import onionrexceptions
-import onionrblockapi as block
+from onionrblocks import onionrblockapi as block
 from onionrutils import localcommand, stringvalidators, basicrequests
 from communicator import onlinepeers
 import onionrcrypto
diff --git a/onionr/httpapi/apiutils/getblockdata.py b/onionr/httpapi/apiutils/getblockdata.py
index 7de04a29..9378d765 100644
--- a/onionr/httpapi/apiutils/getblockdata.py
+++ b/onionr/httpapi/apiutils/getblockdata.py
@@ -1,5 +1,5 @@
 import json
-import onionrblockapi
+from onionrblocks import onionrblockapi
 from onionrutils import bytesconverter, stringvalidators
 import onionrexceptions
 class GetBlockData:
diff --git a/onionr/httpapi/apiutils/shutdown.py b/onionr/httpapi/apiutils/shutdown.py
index 1391a640..a42c2068 100644
--- a/onionr/httpapi/apiutils/shutdown.py
+++ b/onionr/httpapi/apiutils/shutdown.py
@@ -18,7 +18,8 @@
     along with this program.  If not, see .
 '''
 from flask import Blueprint, Response
-import onionrblockapi, onionrexceptions
+from onionrblocks import onionrblockapi
+import onionrexceptions
 from onionrutils import stringvalidators
 from coredb import daemonqueue
 shutdown_bp = Blueprint('shutdown', __name__)
diff --git a/onionr/httpapi/miscclientapi/getblocks.py b/onionr/httpapi/miscclientapi/getblocks.py
index 0fb4f787..4e7fd58e 100644
--- a/onionr/httpapi/miscclientapi/getblocks.py
+++ b/onionr/httpapi/miscclientapi/getblocks.py
@@ -18,7 +18,7 @@
     along with this program.  If not, see .
 '''
 from flask import Blueprint, Response, abort
-import onionrblockapi
+from onionrblocks import onionrblockapi
 from .. import apiutils
 from onionrutils import stringvalidators
 from coredb import blockmetadb
diff --git a/onionr/httpapi/miscpublicapi/upload.py b/onionr/httpapi/miscpublicapi/upload.py
index 2c8f5224..fd90de32 100755
--- a/onionr/httpapi/miscpublicapi/upload.py
+++ b/onionr/httpapi/miscpublicapi/upload.py
@@ -19,7 +19,10 @@
 '''
 import sys
 from flask import Response, abort
-import blockimporter, onionrexceptions, logger
+
+from onionrblocks import blockimporter
+import onionrexceptions, logger
+
 def accept_upload(request):
     resp = 'failure'
     data = request.get_data()
diff --git a/onionr/httpapi/onionrsitesapi/__init__.py b/onionr/httpapi/onionrsitesapi/__init__.py
index 7c3b40c8..c130587e 100644
--- a/onionr/httpapi/onionrsitesapi/__init__.py
+++ b/onionr/httpapi/onionrsitesapi/__init__.py
@@ -20,7 +20,8 @@
 import base64
 import binascii
 from flask import Blueprint, Response, request, abort
-import onionrblockapi, onionrexceptions
+from onionrblocks import onionrblockapi
+import onionrexceptions
 from onionrutils import stringvalidators
 
 site_api = Blueprint('siteapi', __name__)
diff --git a/onionr/blockimporter.py b/onionr/onionrblocks/blockimporter.py
similarity index 97%
rename from onionr/blockimporter.py
rename to onionr/onionrblocks/blockimporter.py
index a0de48c6..997ef099 100755
--- a/onionr/blockimporter.py
+++ b/onionr/onionrblocks/blockimporter.py
@@ -20,7 +20,8 @@
 import onionrexceptions, logger
 from onionrutils import validatemetadata, blockmetadata
 from coredb import blockmetadb
-import onionrblacklist, onionrstorage
+from . import onionrblacklist
+import onionrstorage
 import onionrcrypto as crypto
 def importBlockFromData(content):
     blacklist = onionrblacklist.OnionrBlackList()
diff --git a/onionr/onionrblocks/insert.py b/onionr/onionrblocks/insert.py
index 2801d3ae..38987f47 100644
--- a/onionr/onionrblocks/insert.py
+++ b/onionr/onionrblocks/insert.py
@@ -1,7 +1,8 @@
 from typing import Union
 import json
 from onionrutils import bytesconverter, epoch
-import storagecounter, filepaths, onionrstorage
+import filepaths, onionrstorage
+from . import storagecounter
 from onionrplugins import onionrevents as events
 from etc import powchoice, onionrvalues
 import config, onionrcrypto as crypto, subprocesspow, onionrexceptions
diff --git a/onionr/onionrblacklist.py b/onionr/onionrblocks/onionrblacklist.py
similarity index 100%
rename from onionr/onionrblacklist.py
rename to onionr/onionrblocks/onionrblacklist.py
diff --git a/onionr/onionrblockapi.py b/onionr/onionrblocks/onionrblockapi.py
similarity index 100%
rename from onionr/onionrblockapi.py
rename to onionr/onionrblocks/onionrblockapi.py
diff --git a/onionr/storagecounter.py b/onionr/onionrblocks/storagecounter.py
similarity index 100%
rename from onionr/storagecounter.py
rename to onionr/onionrblocks/storagecounter.py
diff --git a/onionr/onionrcommands/banblocks.py b/onionr/onionrcommands/banblocks.py
index ce2f151d..f9642837 100755
--- a/onionr/onionrcommands/banblocks.py
+++ b/onionr/onionrcommands/banblocks.py
@@ -21,7 +21,8 @@ import sys
 import logger
 from onionrutils import stringvalidators
 from onionrstorage import removeblock
-import onionrblacklist
+from onionrblocks import onionrblacklist
+
 def ban_block():
     blacklist = onionrblacklist.OnionrBlackList()
     try:
@@ -42,4 +43,4 @@ def ban_block():
     else:
         logger.error('Invalid block hash', terminal=True)
 
-ban_block.onionr_help = ": deletes and blacklists a block"
\ No newline at end of file
+ban_block.onionr_help = ": deletes and blacklists a block"
diff --git a/onionr/onionrcommands/filecommands.py b/onionr/onionrcommands/filecommands.py
index 19631d16..01c96aef 100755
--- a/onionr/onionrcommands/filecommands.py
+++ b/onionr/onionrcommands/filecommands.py
@@ -1,9 +1,9 @@
-'''
+"""
     Onionr - Private P2P Communication
 
     This file handles the commands for adding and getting files from the Onionr network
-'''
-'''
+"""
+"""
     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
@@ -16,11 +16,11 @@
 
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see .
-'''
+"""
 
 import base64, sys, os
 import logger
-from onionrblockapi import Block
+from onionrblocks.onionrblockapi import Block
 import onionrexceptions
 from onionrutils import stringvalidators
 from etc import onionrvalues
@@ -37,9 +37,9 @@ def add_html(singleBlock=True, blockType='html'):
 add_html.onionr_help = "Adds an HTML file into Onionr. Does not currently include dependant resources"
 
 def add_file(singleBlock=False, blockType='bin'):
-    '''
+    """
         Adds a file to the onionr network
-    '''
+    """
 
     if len(sys.argv) >= 3:
         filename = sys.argv[2]
@@ -61,9 +61,9 @@ def add_file(singleBlock=False, blockType='bin'):
 add_file.onionr_help = " Add a file into the Onionr network"
 
 def get_file():
-    '''
+    """
         Get a file from onionr blocks
-    '''
+    """
     try:
         fileName = _get_dir(sys.argv[2])
         bHash = sys.argv[3]
diff --git a/onionr/onionrcommands/onionrstatistics.py b/onionr/onionrcommands/onionrstatistics.py
index 0c601b25..a63db177 100755
--- a/onionr/onionrcommands/onionrstatistics.py
+++ b/onionr/onionrcommands/onionrstatistics.py
@@ -19,7 +19,7 @@
 '''
 import os, uuid, time
 import logger
-from onionrblockapi import Block
+from onionrblocks import onionrblockapi
 from onionrutils import checkcommunicator, mnemonickeys
 from utils import sizeutils, gethostname, getconsolewidth, identifyhome
 from coredb import blockmetadb, daemonqueue, keydb
@@ -30,7 +30,7 @@ def show_stats():
         # define stats messages here
         totalBlocks = len(blockmetadb.get_block_list())
         home = identifyhome.identify_home()
-        signedBlocks = len(Block.getBlocks(signed = True))
+        signedBlocks = len(onionrblockapi.Block.getBlocks(signed = True))
         messages = {
             # info about local client
             'Onionr Daemon Status' : ((logger.colors.fg.green + 'Online') if checkcommunicator.is_communicator_running(timeout = 9) else logger.colors.fg.red + 'Offline'),
diff --git a/onionr/onionrpeers/peercleanup.py b/onionr/onionrpeers/peercleanup.py
index e81a5289..c332828b 100644
--- a/onionr/onionrpeers/peercleanup.py
+++ b/onionr/onionrpeers/peercleanup.py
@@ -21,7 +21,8 @@ import sqlite3
 import logger
 from onionrutils import epoch
 from . import scoresortedpeerlist, peerprofiles
-import onionrblacklist, config
+from onionrblocks import onionrblacklist
+import config
 from coredb import keydb
 def peer_cleanup():
     '''Removes peers who have been offline too long or score too low'''
diff --git a/onionr/onionrpeers/peerprofiles.py b/onionr/onionrpeers/peerprofiles.py
index b9c2b613..000e9c4d 100644
--- a/onionr/onionrpeers/peerprofiles.py
+++ b/onionr/onionrpeers/peerprofiles.py
@@ -20,7 +20,7 @@
 from coredb import keydb
 from onionrutils import epoch
 from onionrutils import stringvalidators
-import onionrblacklist
+from onionrblocks import onionrblacklist
 import onionrexceptions
 
 UPDATE_DELAY = 300
diff --git a/onionr/onionrproofs.py b/onionr/onionrproofs.py
index 43adcaec..5b8dada7 100755
--- a/onionr/onionrproofs.py
+++ b/onionr/onionrproofs.py
@@ -17,8 +17,11 @@
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see .
 '''
-import multiprocessing, nacl.encoding, nacl.hash, nacl.utils, time, math, threading, binascii, sys, json, sys
-import config, logger, onionrblockapi, storagecounter
+import multiprocessing, time, math, threading, binascii, sys, json
+import nacl.encoding, nacl.hash, nacl.utils
+
+import config, logger
+from onionrblocks import onionrblockapi, storagecounter
 from onionrutils import bytesconverter
 from onionrcrypto import hashers
 config.reload()
diff --git a/onionr/onionrstorage/removeblock.py b/onionr/onionrstorage/removeblock.py
index 46b6e45a..1a6830d9 100644
--- a/onionr/onionrstorage/removeblock.py
+++ b/onionr/onionrstorage/removeblock.py
@@ -2,7 +2,7 @@ import sys, sqlite3
 import onionrexceptions, onionrstorage
 from onionrutils import stringvalidators
 from coredb import dbfiles
-import storagecounter
+from onionrblocks import storagecounter
 def remove_block(block):
     '''
         remove a block from this node (does not automatically blacklist)
diff --git a/onionr/onionrstorage/setdata.py b/onionr/onionrstorage/setdata.py
index 2ca93bb7..474916b0 100644
--- a/onionr/onionrstorage/setdata.py
+++ b/onionr/onionrstorage/setdata.py
@@ -1,6 +1,7 @@
 import sys, sqlite3
 import onionrstorage, onionrexceptions, onionrcrypto as crypto
-import filepaths, storagecounter
+import filepaths
+from onionrblocks import storagecounter
 from coredb import dbfiles
 from onionrutils import blockmetadata, bytesconverter
 def set_data(data)->str:
diff --git a/onionr/onionrutils/blockmetadata/process.py b/onionr/onionrutils/blockmetadata/process.py
index 39abe1bb..7dc28f61 100644
--- a/onionr/onionrutils/blockmetadata/process.py
+++ b/onionr/onionrutils/blockmetadata/process.py
@@ -19,7 +19,7 @@
 '''
 
 from etc import onionrvalues
-import onionrblockapi
+from onionrblocks import onionrblockapi
 from .. import epoch, bytesconverter
 from coredb import blockmetadb
 import logger
diff --git a/onionr/subprocesspow.py b/onionr/subprocesspow.py
index 730d2307..37936b74 100755
--- a/onionr/subprocesspow.py
+++ b/onionr/subprocesspow.py
@@ -22,7 +22,8 @@
 import subprocess, os
 import multiprocessing, threading, time, json
 from multiprocessing import Pipe, Process
-import onionrblockapi, config, onionrutils, logger, onionrproofs, onionrcrypto as crypto
+from onionrblocks import onionrblockapi
+import config, onionrutils, logger, onionrproofs, onionrcrypto as crypto
 from onionrutils import bytesconverter
 class SubprocessPOW:
     def __init__(self, data, metadata, subproc_count=None):
diff --git a/onionr/utils/networkmerger.py b/onionr/utils/networkmerger.py
index bfa1d349..e525ba78 100755
--- a/onionr/utils/networkmerger.py
+++ b/onionr/utils/networkmerger.py
@@ -19,7 +19,8 @@
 '''
 import logger
 from coredb import keydb
-import config, onionrblacklist
+import config
+from onionrblocks import onionrblacklist
 from utils import gettransports
 def mergeAdders(newAdderList):
     '''
diff --git a/tests/test_blocks.py b/tests/test_blocks.py
index 48f3fd4e..37eae5be 100755
--- a/tests/test_blocks.py
+++ b/tests/test_blocks.py
@@ -9,7 +9,7 @@ import onionrstorage
 from utils import createdirs
 from onionrutils import bytesconverter
 import onionrcrypto
-import onionrblockapi
+from onionrblocks import onionrblockapi
 
 def setup_test():
     TEST_DIR = 'testdata/%s-%s' % (uuid.uuid4(), os.path.basename(__file__)) + '/'
diff --git a/tests/test_storagecounter.py b/tests/test_storagecounter.py
index 2ba0c0d2..f0b0d832 100644
--- a/tests/test_storagecounter.py
+++ b/tests/test_storagecounter.py
@@ -13,7 +13,7 @@ from utils import createdirs
 import onionrblocks
 import filepaths
 import onionrexceptions
-import storagecounter
+from onionrblocks import storagecounter
 import onionrstorage
 
 def _test_setup():