Create backdrop_client library to chat up backdrop
Override DataSet save() method to call backdrop

To keep the existing tests working, this requires mocking out the call to
create_datasets so that it doesn't try to contact backdrop during tests.
DataSet tests for integration with backdrop_client
WIP: Admin handler which makes exceptions nicer

When an exception is raised by the DataSet model's save() method, by
default this bubbles up to the user who gets an unfriendly HTTP 500.

This converts exceptions to admin UI warnings using the messages
framework.

TODO: prevent the 'dataset added successfully' message from occurring
when it didn't.