CRUD Stuff for Projects

With specs.
Parentheses probably aren't needed here