Remove uploading from write api flask app
Move upload helpers into admin app package

`scanned_file`, `signonotron2` and `uploaded_file`
Remove write api feature test helpers

They are now all being handled by the admin app.
Make `remove_key` a pure function

Also, remove duplicate `remove_collected_key` function.
Add doctest to show that it's pure.
Refactor collect functions

- Factor the collect functions out into separate functions rather than
  switching so that they can be more easily extended and indepdendently
  tested.
- Move the collect function tests into doctests. They're small and
  focused so it makes sense for the the tests to be close to the code.
Merge pull request #219 from alphagov/tidy-nested-merge

Tidy nested merge
Merge pull request #214 from alphagov/remove-admin-app

Remove admin app
Fix create capped collection

`db` is now a backdrop Database which has a slightly different signature
for creating a capped collection. This only manifests itself when the
collections do not already exist.
Add migration to convert GA timezone to UTC

We are ignoring the timezone from GA requests so previous data needs to
be converted to account for this.

See https://www.pivotaltracker.com/story/show/62779118 for details.
Merge pull request #220 from alphagov/fix-ga-bucket-timezones

Add migration to convert GA timezone to UTC
Modify readme to reflect correct way to run replicate db
Merge pull request #221 from alphagov/update-readme-replicatedb

Modify readme to reflect correct way to run replicate db