Use Rails::cache for email login token

- Store token in Rails::cache instead of database
- Store remember_me and return_to in the token object
- Don't put extra params in the login link
- Use cache expiry to expire auth token
- Put token auth logic in Warden strategy
- remove old token auth fields from database

note: since more of the work is happening in warden, controller tests were acting strange. added capybara tests to compensate.
Do we really want this as an option? I can see us maybe wanting to change the default digest method at some point, but if so we should do it uniformly rather than letting callers do it.