Commit 7a54543a81
made it such that a BlockDeviceMapping object has to be
constructed with a request context in order to call the
remotable save() method on it.
We must be already passing BDM objects when constructing
DriverBlockDevices otherwise calling self._bdm_obj.save()
would fail with an OrphanedObjectError. So the only places
that were still using bdm dicts were unit tests, and those
worked because objects.BlockDeviceMapping.save() is being
mocked out.
This removes the false sense of ability to construct a
DriverBlocKDevice without a BDM object and cleans up the
unit tests to reflect that reality.
Closes-Bug: #1524035
Change-Id: Ie745fc4d36ceb3e0aae1b14d5d56b2b83bbb192c