add a ProjectsFactory which integrates all the scattered code for creating ProjectsPackages which implement project
inject ProjectsFactory into Container