Project manager revamp

This is an updated/rebased ProjectManager revamp for #8788. This replaces #8885.

cc @ingorichter