WIP: Initial implementation of project resource

This PR is intended to show the community an implementation approach consistent with #1017

This file does not persist projects - there is a different RESTStorage for that.

This file proxies storage of project-scoped resources to ensure that the project exists prior to persisting project-scoped entities.  It provides a single point for allowing any resource that supports labeling to be managed by a project scope and enforcing its constraints.

I can move it into the alternate package, which is a good proposal, but the need for a separate resource that does this exact pattern still remains.