more project refactoring