Refactor and organize project.