'Create & open the connection, authenticate, and provide pointers to the collections'

def __init__(self, db, collection, host, port=27017, tz_aware=True, user=None, password=None, asset_collection=None, retry_wait_time=0.1, **kwargs):

    kwargs['w'] = 1
    self.database = connect_to_mongodb(db, host, port=port, tz_aware=tz_aware, user=user, password=password, retry_wait_time=retry_wait_time, **kwargs)
    self.course_index = self.database[(collection + '.active_versions')]
    self.structures = self.database[(collection + '.structures')]
    self.definitions = self.database[(collection + '.definitions')]
