improved project structure