Add image banner customization view and frontend.
Move to latest factory-boy.

Points the requirements file to the correct minimum version and updates
existing factories to point to new DjangoModelFactory class.

Also removes an extra factory from the Facebook tests.
Add tests for new models and banner creation process.

Also fixes issues with existing tests:
- Jenkins runs Python 2.6, which doesn't support using assert_raises as
  a context manager, so we use Django's version on TestCase, which uses
  the version from unittest2, which does support it.
- Set BannerFactory to be an abstract factory.