recursive module importer