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
`check_edit_permission()` might be better as `check_update_permission()`, to more closely follow API wording.

Also, would it make sense to add these as abstract methods on the Controller base class?