Reorganize source file structure