refactoring and directory renaming