More refactors to have proper directory structure