def get_parent(obj, n=1):
    """
    This function is intended for use by modules imported from outside
    the package via the filesystem to get around the behavior of python's
    super() which breaks when something is effectively reloaded.

    .. todo:: A cleaner solution to handle this condition is needed.

    """
    import inspect
    return inspect.getmro(obj.__class__)[n]
