feat: marconi proxy

This patchset introduces the marconi-proxy service. The service makes
it possible to abstract marconi deployments into partitions, as
defined in the referenced blue print.

This reference implementation uses falcon to manage WSGI aspects,
redis for catalogue storage, and recommends gunicorn or uwsgi as the
server.

Includes:
- registering partitions
- cataloguing queues
- forwarding requests to the appropriate marconi partitions
- round-robin selection of partition nodes
- weighted selection of partitions at queue creation time
- queue listing w/ metadata (GET /v1/queues?detailed=true)

Still needed, working on:
- unit tests

A few things that will be handled in later patchsets
- queue metadata handling + metadata endpoint (2)
- request forwarding to marconi (3)
- hierarchical caching with authoritative persistent storage (4)
- regeneration of the catalogue from authoritative cache (5)

Change-Id: I5dabc92497f3edf5bc32d58c8a2c4e43ff9833a3
Implements: blueprint placement-service