- improved project diagram
- refactoring