fix(sharding): deregister queue before delete

This addresses a subtle issue in the case that a worker crashes in the
middle of a queue deletion.

Currently, the order of operations on a queue delete in a sharded
context is:

1. Delete queue from storage
2. Remove the queue from the catalogue

This is *wrong*. If a marconi server dies between 1 and 2, the system
is left in an inconsistent state. Lookups on the catalogue will still
forward operations to storage, and storage may or may not return a 500
depending on the operation performed. It's difficult to reason about.

The new proposed ordering is:

1. Remove the queue from the catalogue
2. Delete queue from storage

In this case, the failure behavior is easy to reason about. For all
operations excluding creating a queue with the same name, a 404 will
be raised, as expected. In the case of a create queue, a 204 will be
returned rather than a 201, which is functionally equivalent.

Change-Id: Ia4063305cebb1e89118cfca8efccf0b38ae41adb
Instantiate app only when needed

This patch instantiates the app only when it is needed. This will
allow the functional tests to run against an external marconi
server, without having to unnecessarily configure the cache_url.

Change-Id: I54e436e08bbe6d2f3e3a4643f687e1d3a1647bb0
Closes-Bug: #1285100
Remove MySQL-python from the dependency list

MySQL is not a recommended database for production environments. The
dependency to the mysql python library was added to be able to run
Marconi on the gate.

Since we're not willing to promote sqlalchemy as the recommended driver,
it makes sense to remove the mysql dependency from the dependencies
list.

Closes-bug: #1308500

Change-Id: Ic83707cb145d752b30e285f1a25376525a80079c
Merge "fix(sharding): deregister queue before delete"
Disable Metadata write operations on v1.1

This is the first step towards removing metadata completely from the
API. This is temporary until we decided whether we will remove read
operations too.

Partially-Implements: api-v1.1-remove-queue-metadata

Change-Id: I18b8b7a9284b37d866dec7ab1f8117dc779431f8
Merge "Instantiate app only when needed"
Merge "Disable Metadata write operations on v1.1"