refactored project structure for future use