Return computed url with post object

closes #4445

- post model gets permalink format
- post model queries urlPathForPost to return computed url with post
- url helper modified to use post.url
- urlForPost method abolished and replaced where necessary
- updated tests.
Shouldn't need to wrap this in a `Promise.resolve()` because `findOne()` is already returning a promise.