Introduced Project notion; misc refactorings.