refactored project struct. added more common tests