Add Customisable Permalinks

This adds customisable permalinks (#1395).

They can be configured in the general settings and are regular express route strings. Because we need at least one uinque identifier, either `slug` or `id` must be provided; `year`, `month` and `day` are optional.

Eg: `/:year/:month/:day/:slug/` -> `my-ghost-blog.com/2013/11/20/myslug/`.

TODO:
* Live reloading. Routes can be removed from `server.routes` and then just registered again, however I am not sure where to put this. There is no way to get access to `server` outside of `server.js`, right?
* ~~Refactor the `url` helper in ` core/server/helpers/index.js` that generates the permalink for a post.~~ This might be related to #1390, @hswolff do you think we should put this in the module you are working on?
* Multiple routes / redirects for compatibility. Not sure if necessary?
* ~~What should I use for name, description & error message in the settings? I think the error box is not really suited to provide a description of the valid values because these are rather complex; maybe add a link to the documentation?~~
* Write Tests ~~(and fix the current one's)~~