Add version 2.0 of conductor rpc interface

This commit adds a new major revision to the rpc interface used to
talk to the conductor service.  The old version will be retained in
Icehouse for Havana rolling upgrade capability.  1.x can be dropped
as soon as Juno development opens.

When 1.x gets dropped, we will be able to remove the following methods
from the conductor manager, as well as all other supporting code for
these methods throughout the conductor:

 - ping()
 - instance_get()
 - instance_get_all()
 - migration_get()
 - migration_get_unconfirmed_by_dest_compute()
 - migration_create()
 - migration_update()
 - aggregate_get()
 - aggregate_get_by_host()
 - aggregate_metadata_add()
 - aggregate_metadata_delete()
 - get_backdoor_port()
 - security_group_get_by_instance()
 - security_group_rule_get_by_security_group()
 - block_device_mapping_destroy()
 - instance_get_all_hung_in_rebooting()
 - instance_info_cache_update()
 - instance_type_get()
 - vol_get_usage_by_time()
 - vol_usage_update()
 - compute_stop()
 - compute_confirm_resize()
 - compute_reboot()

We can also drop backwards compatibility handling for the absence of
any parameters added to other methods during 1.x.

Note that the client side will only send 2.0 messages, but that's
fine.  We expect the nova-conductor service to get updated at the same
time as, or before anything that uses this client code.

For more information on this type of change, see:
https://wiki.openstack.org/wiki/RpcMajorVersionUpdates

Part of blueprint rpc-major-version-updates-icehouse

Change-Id: Ic443c02b1342cceb8c86c37b51af03094157bc48
Merge "Add version 2.0 of conductor rpc interface"