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.
Add link referral view that sends data to GA and use it for banner code.
Add management command for retrieving referral data and fix model.
Tests!
Add google-api-python-client.
Add setting for stylus support.
Base template, stubbed out home page
Bug 976231 - leaderboard template

With a few base changes, too
Merged before Craig could fix the capitalization, doh!
Bug 976804: Implement JavaScript-based upgrade banners.

Also simplify OverwritingStorage and use it on the image banner 
variations.
Add tests for upgrade banners and remove storage tests.