added tests, and basic logic for AddNewProjectShell