Add support for custom user models in Django 1.5+

Fixes #6. This is backwards compatible with non-custom user models as well.

Minor additions:
- Fixed line length for pep with the normal standard being 120 (updated flake TravisCI config)
- Cleaned up files to meet PEP8 (mostly stuff that flake isn't picky about)
- Updated requirements-dev.txt to include requirements needs for proper module introspection / hinting while developing locally (i.e. get rid of PyCharm snags of missing packages)

Besides that, other changes look good to me.