correct the name style issue of ExtendedServerAttributes in v3 api

correct the camel style issue of the attribute ExtendedServerAttributes:
namespace in v3 api

fix Bug #1214317

Change-Id: If58d8cd8a82a88a94302c3b0aa3d23f5414328cb
Add volume snapshot APIs to driver interface

Add volume_snapshot_create and volume_snapshot_delete to the virt driver
interface.  This is needed to be able to do hypervisor assisted snapshot
operations.

Part of blueprint qemu-assisted-snapshots

Change-Id: I933e000ee56430365f9e380196714f43a85f147f
Add db.block_device_mapping_get_by_id

Add a new db API method for getting a block device mapping for a given
volume ID.  This is needed when Cinder calls over to Nova asking nova to
complete a snapshot operation on its behalf.

Related to blueprint qemu-assisted-snapshots

Change-Id: If3f011e2db14235f4137c9d9cb610f0c4cd7954a
Assisted snapshots compute API plumbing

This patch adds the plumbing necessary to get assisted volume snapshot
calls down from compute.api down to a compute host.

Part of blueprint qemu-assisted-snapshots

Change-Id: I18d89b16c3e4bbbb2cdf3fe70c958f7e671e78ec
Add volume snapshot delete API test case

Later in this patch series I'm adding some additional functionality to
the snapshot delete API.  I noticed that there was no unit tests for the
API.  Go ahead and add a base test case now that I can add more to
later.

Related to blueprint qemu-assisted-snapshots

Change-Id: Iff4e4c0e7de48d5375d66271dfc8ad4cbdff2a31
Add os-assisted-volume-snapshots extension

Add a new API extension that exposes assisted volume snapshot
capabilities.  This extension is only enabled in the admin API by
default.

Part of blueprint qemu-assisted-snapshots

Change-Id: I79e22ab6ef66fa16dc534a4336e766065702b2f5