refactoring project and module structure