Add keystone middleware to devstack

Add the keystonemiddleware repository to devstack to support testing
with tempest and stable branches.

Change-Id: Ib635465e6568d9cd51d6e432ec8b8633a27d19ce
fix trove image addition

the previous addition to trove was done in a way that it was not
possible to discover from nodepool. This fixes our ability to do
that, especially with non-default on services.

Change-Id: I8ca682354e0d4e2eb9cf05f40c6dd783de1c6355
Merge "Add keystone middleware to devstack"
Merge "fix trove image addition"
Support multiple Cinder backend types

This is the first step in supporting multiple Cinder backend types at
once.  It initially converts the existing hard-coded multi-lvm support
to a new cinder_backends driver form.  Eventually the cinder_plugins
will be converted to this form so they can be enabled more than just
one at a time using CINDER_ENABLED_BACKENDS.

The default configuration should be identical to the previous defaults,
including for both True and False values of CINDER_MULTI_LVM_BACKEND.

The existing cinder_plugins are expected to be removed when this is
complete. They should continue to work until they have been converted.

Add wait for c-api to start-trying to figure out why cinder type-create fails...

Change-Id: I93b8ef32832269d730c76a6dc24ddb4f20c6d9df
Merge branch 'cinder-backends' into dt-test
Merge branch 'test-ini-improvements' into dt-test
Merge branch 'usb-prereq' into dt-test
Merge branch 'conf-tempest' into dt-test