Fix tests by solving the User/UserSession config issue...

We had a bunch of tests that changed the User/UserSession
configuration, but not all of them would reset the values back
to their original.

This solution introduces testable_user_class/testable_user_session_class
methods. They will return throwaway classes that inherit from User/UserSession,
respectively.

There are some other test fixes in here too, like swapping users(:ben)
fixture out with users(:aaron) where appropriate because users(:ben)
has to transition its password when doing p/w verification. This would
cause problems because the record when then save, which had unintended
side effects like changing the updated_at timestamp, etc.