Add support for user sessions
Add a basic framework to handle user authentication
Implement CSRF
Rework the session handling to use a dispatch_view decorator
Store our sessions inside of redis

* Use msgpack to serialize the sessions for more compact
  storage and for faster serialization/deserialization
* Move the session cycling support into our RedisSessionStore
* Expire our redis sessions after 12 hours, but renew the session
  on every interaction with Warehouse
Use warehouse.utils.random_token for our CSRF tokens
Support ?next= urls on login to control the redirection
Add a page that allows users to log out of their session
Log when an error occurs trying to verify the user's password
Enable translations of the login form
Add tests for all the new functionality
Document the new functionality
Remove some left over print statements
Only trust a certain list of Host headers
Merge pull request #248 from dstufft/user-login

Sessions, CSRF, and User Authentication