Recursively import all modules and packages
    Thanks http://stackoverflow.com/a/25562415/1267398
    XXX: Needs UT

    :attr path: Path to package/module

def import_recursive(path):
    """
    Recursively import all modules and packages
    Thanks http://stackoverflow.com/a/25562415/1267398
    XXX: Needs UT

    :attr path: Path to package/module
    """
    results = {}
    obj = importlib.import_module(path)
    results[path] = obj
    path = getattr(obj, '__path__', os.path.dirname(obj.__file__))
    for loader, name, is_pkg in pkgutil.walk_packages(path):
        full_name = obj.__name__ + '.' + name
        results[full_name] = importlib.import_module(full_name)
        if is_pkg:
            results.update(import_recursive(full_name))
    return results