refactors for better project  directory structure