Switch to Either in loginByRememberToken return type

Most login related functions were already using Either for returning
login related errors.  Convert loginByRememberToken from Maybe to
Either to be consistent with the rest of this module's error handling.

Fix unit tests for the new loginByRememberToken type
Return () instead of AuthUser from forceLogin

forceLogin was returning an AuthUser for no apparent reason.  It
wasn't clear what the callee of this function would do with the
returned (unchanged) AuthUser, so use ().
Major version bump
Update SimpleLoupe to ALens' for lens-3.8 and forward
Use derived instance for Typeable AppConfig
Merge pull request #74 from glguy/master

update to lens 3.8 names and used derived typeable instance
Add MonadReader instance for Handler
Add a new function loadAppConfig to provide app configs in the IO monad
Update version dependencies for errors, either, and logict
Downgrade snap-core dep.
One more errors version bump
Bump lens dep in the test suite
Add workaround for lens problem and corrected the directory-tree lower bound
Fix hashable lower bound, widen lens lower bound
Remove test suite bounds on lens so it won't conflict with the main package
Set the lower bound to the most recent working version
Grrr, have to duplicate the flag for the test suite
Update project template cabal files with the new lens flag
Bump the lower lens bound to exactly the right version
Revert "Use derived instance for Typeable AppConfig"

This reverts commit fc078d1848fa46edd8a5e0f06f28744d7e0b53d2.