Fix various PEP8 warnings
Rewrite BucketConfigRepository, talk to Stagecraft

We don't store the metadata in Backdrop any more. We're modifying
BucketConfigRepository to call the Stagecraft /data-sets endpoint to get
the metadata.
Add the STAGECRAFT_* config options to dev/test
Instantiate BucketConfigRepository with new sig
Update tests for new BucketConfigRepository
Feature tests working with fake Stagecraft server

Backdrop now gets its config from Stagecraft rather than storing it
itself. We need a fake Stagecraft server to return config for feature
tests where we cannot stub out the Stagecraft client interface.
Removed unused method and added empty arg error handling
Backdrop sends Bearer token to Stagecraft

The `/data-sets` endpoint in Stagecraft is protected by a shared bearer token.
Backdrop must send the token when it requests data set metadata from
Stagecraft

- In `BucketRepository`, send HTTP requests to Stagecraft instead of
  looking inside Mongo's `buckets` collection.
- Selectively handle HTTP 404 from Stagecraft - only `/data-sets/<name>`
  can legitimately return a 404, all other HTTP errors must bubble up.
- Fix `/data-sets/` vs `/data-sets` URL in fake Stagecraft
- Added logging on Stagecraft HTTP responses and their JSON content to
  make them easier to diagnose.
- Quite a lot of test refactoring - move unit tests that shouldn't have
  been put into integration tests for BucketRepository

Related to https://www.pivotaltracker.com/story/show/67103208
[#67103208]
Don't specify a size for an uncapped collection

If we're making an uncapped collection there is no reason to pass in a
size parameter.
Merge pull request #258 from alphagov/master-stagecraft

Master stagecraft