Initial pass at new style Posts Controller 

Initial Controller routes and methods:

- [x] get all posts
- [x] get a post
- [x] get revisions for a post
- [x] create a post
- [x] update a post
- [x] delete a post

Test coverage routes and methods:

- [x] get all posts
- [x] get single post
- [x] get revisions for a post
- [x] create a post
- [x] update a post
- [x] delete a post
Why return null instead of an empty string?