[bp] Add support for Cinder multi-backend

* Create class cinder::backend.
   Sets DEFAULT/enabled_backends

* Create define cinder::volume_type.
   Uses name and passed backend_names to set type information

* Create define cinder::volume_set_key.
   multi-purpose set function to set extended information.

* Copy rbd, iscsi, and nfs volume providers to support multi-backend
   Now provided as cinder::backend::<driver> to ensure that multi-backend
   aware driver is|[ not] used.

* Add rspec for new parts to ensure expected function.

Blueprint: cinder-volume-multi-backend

Change-Id: I6df9cadaad3b9ce2ab4b0e87dba9b5056459db10