Adds the authorisation middleware

We need the authentication components (#12 and #11) to set ctx.authentication to an application object before this can added as Koa middleware. This should be done before this functionality can be merged to master.

Fixes #13