requirements: Update Django requirements
requirements: Update various requirements versions

Also drop exact versions for travis as we will always want the latest ones.
requirements: Update Raven optional dependency to 5.x
Travis: Always use latest packages from pypi
Travis: Use travis_retry for installing things
Travis: Cache apt packages
settings: Remove the INTERCEPT_REDIRECT option from dev settings

The option is deprecated on newer versions of django-debug-toolbar
Upgrade: Fix pootle imports
Permissions: Use User over PootleProfile
Permissions: Use User in get_matching_permissions()
Permissions: Change check_profile_permission() to check_user_permission()
Permissions: Minor style fixes
Migration: initial migration script
Migration: add migration data submodule
Migration: notes on version migration setup and operations
Travis: use different dbname for testing

Prevents any potential conflict if you run this locally
Travis: run migration tests