updated modules and file structure