re factor the layout of file structure.