Bug 976227 - dashboard template

Rough template, more polish on the way.
Updated tests for landing->home.
No, really, deploys don't need user input.
Base template and home page updates
Add contributing guidelines document.
Bug 976794: Add model for news items and display them on dashboard.
Add helper for retrieving gravatars.
Bug 976809: Add management command for updating leaderboard.

- Also update collect_ga_data to batch bulk data insertion in case MySQL
  decides it's not waiting for a crapton of data.
- Add a script to bin for running the nightly update tasks.
Partial integration of leaderboard template.
Store the type of banner that links were created by.
Bug 976782: Calculate and display milestones.
Tests!
Bug 976804: Implement new upgrade banners.

Includes a management command for generating a .htaccess file for the
media directory, that controls the display of the banner images.

Upgrade banner image display won't work unless you have apache serving
up the media directory instead of Django as it relies on the .htaccess
file.
Empty out product_details and add .gitignore for it.
Include support for legacy upgrade banners by explicitly including them.
Remove storage tests (too simple) and add tests for upgrade banners.
Make update_product_details able to run when json directory is empty.

Removes dependence on product_details to load settings and models. Also
adds a note to the install docs to download the product_details JSON
files.