WIP: Initial implementation of project resource

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

Ah, you saw this pattern during the short time that it was in. Unfortunately, it's broken. See #1000.