Add REST API for instance group api extension

Support the Creation, Read, Delete, and List of server groups.

Refactored the code to use objects (https://review.openstack.org/#/c/38979/
Renamed from "instance group" to "server group".

Implements: blueprint instance-group-api-extension

Change-Id: I650a8f191dea5eab5b4b1828f0b9f65e33edea2a
Move live migration callbacks to BDM objects

This patch moves the two live migration callbacks _post_live_migration
and _rollback_live_migration to use BDM objects.

As this is the last code that was using _get_instance_volume_bdms helper
method, this patch removes it.

Part of blueprint: icehouse-objects

Change-Id: I904d8b5b58d0ee4ba5a5d836fe3f8a236793f33b
Move run_instance compute to BDM objects

This patch moves the run_instance code of the compute service to BDM
objects.

This is the last bit of compute that needed migrating to BDM objects.

Part of blueprint: icehouse-objects

Change-Id: I055651b5fd415092787d9487a69467a9bbcf073e
Merge "Move live migration callbacks to BDM objects"
Merge "Move run_instance compute to BDM objects"