add new module loading method and update all modules to use new method