'Setup all the required backend stores. This was mostly created to avoid
starting any threads during __init__() which is called during python\'s
import phase and dead-locks in some cases.
:return: None'

def setup(self):

    with self._kb_lock:
        if self.initialized:
            return
        self.urls = DiskSet(table_prefix='kb_urls')
        self.fuzzable_requests = DiskSet(table_prefix='kb_fuzzable_requests')
        self.db = get_default_persistent_db_instance()
        self.table_name = ('knowledge_base_' + rand_alpha(30))
        self.db.create_table(self.table_name, self.COLUMNS)
        self.db.create_index(self.table_name, ['location_a', 'location_b'])
        self.db.create_index(self.table_name, ['uniq_id'])
        self.db.commit()
        self.initialized = True
