Feature/2237 auto generate screenshots for user manual

Hi @aronasorman - this is for #2237... still a WIP but already working, see ToDos section below.

This PR has the `python manage.py screenshots` management command.  It needs the `/kalite/distributed/data/screenshots.json` to take screenshots using Selenium firefox webdriver.

It auto-creates another sqlite3 database on `/data/screenshots/screenshots-data.sqlite` and also saves the screenshots (.png files) on the same location.  It then deletes that sqlite3 database when done.

It inherits form the `KALiteDistributedBrowserTestCase` class for reuse.

There's a documentation at `/docs/screenshots.md`.

**ToDos**

1. Complete the `screenshots.json` based on the User Guide v0.12.x
1. Need data on what account to use for the KA-Lite Hub to simulate selenium web browser - unless it's ok to just create another user for the device registration and Hub signup.
Perhaps this can be expressed better with `key, value = next(item.iteritems())`.