A fairly messy first implementation of the Project resource