Authentication

Hub can log people in using Warden.

Persons have many `owned_applications`, which are apps that have registered to use the hub for authentication.

Persons also have many `authorized_applciations`, which are really `AccessCode`s and `AccessToken`s and they represent applications that the person is logged in to using the hub.

`AccessCode`s and `AccessToken`s are my take so far on implementing the OAuth jig.

There are still a few crufty things that I'll be cleaning up, so if you see something that needs fixing let me know