refactor the project structure.