Use `class_attribute` to track user types

Since class instance variables don't propagate down the inheritance
chain, the `logged_in?` method would blow up when checking to see if any
of the registered user types were logged in.
Expose a `login_url` method for redirection