refactored the directory structure