Add a provider_id column to Volumes and Snapshots

There are a number of cases where there's some really ugly mapping
work in drivers to try and map the backend device-id to the
Cinder ID of a Volume or Snapshot.  Most drivers seem to work around this in
their own creative ways using their own mechanisms (metadata,
naming schemes etc).

It seems like it would be useful for a number of reasons however to
go ahead and add a simple column to the Volumes table that could be
used for storing a backend ID for the Volume and Snapshot.

Change-Id: Id07cdd1e03feac71ff34325d5abc68c5adc48266
Merge "Add a provider_id column to Volumes and Snapshots"