Include name in a primitive Instance.

This ensures that the name of an instance will be present in the result
of jsonutils.to_primitive(Instance).  The name isn't a column.  It's a
property that gets generated dynamically by the Instance class.

Part of blueprint no-db-messaging.

Change-Id: I45914ed55f2c037ee2efd7775bd57fbde36a2116
Convert reboot_instance to take a full instance.

Convert the reboot_instance method in the compute rpc API to take a full
instance via rpc instead of just the instance UUID.  This cuts down on
database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: Id2c455f66966a9b446e5bbbe542ed3a2b0655289
Don't use rpc to lock/unlock an instance.

Instead of converting this method to send a full instance over rpc
instead of just an instance UUID, this patch removes the usage of rpc
for this operation entirely.  All it's doing is a database update.  RPC
is expensive, so cut out the middle-man.

One functional difference with this approach is that the db update is
now synchronous on the API node, instead of kicking off an async message
to a compute node to handle it.  This seems fine, though.

Part of blueprint no-db-messaging.

Change-Id: I15ceb7625425ab097eebd5b7dd3606a171329f97
Send a full instance via rpc for (un)pause_instance.

Change the pause_instance and unpause_instance methods of the compute
rpc API to take a full instance over rpc instead of just the instance
UUID.  This cuts down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: Ia7e31428c7d2edb9a0c4d0958f1c7774742ea1cd
Send a full instance via rpc for suspend_instance.

Change the suspend_instance method of the compute rpc API to take a full
instance over rpc instead of just the instance UUID.  This cuts down on
database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: If881fb419a52a2486b2e7b85b4d58a17f72c48a6
Send a full instance via rpc for get_console_output.

Change the get_console_output method of the compute rpc API to take a
full instance over rpc instead of just the instance UUID.  This cuts
down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I114081fceddc2c7226aab9bd560f3664000a43af
Send a full instance via rpc for add_fixed_ip_to_instance.

Change the add_fixed_ip_to_instance method of the compute rpc API to take a
full instance over rpc instead of just the instance UUID.  This cuts
down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I21d91e6c95dca47390b306517eeb4155defc4e65
Send a full instance via rpc for attach_volume.

Change the attach_volume method of the compute rpc API to take a
full instance over rpc instead of just the instance UUID.  This cuts
down on database access needed by nova-compute.

Part of blueprint no-db-messaging.

Change-Id: I85ad29e84b5e97a3f918059b10e2309312756050
Merge changes I85ad29e8,I21d91e6c,I114081fc,If881fb41,Ia7e31428,I15ceb762,Id2c455f6,I45914ed5

* changes:
  Send a full instance via rpc for attach_volume.
  Send a full instance via rpc for add_fixed_ip_to_instance.
  Send a full instance via rpc for get_console_output.
  Send a full instance via rpc for suspend_instance.
  Send a full instance via rpc for (un)pause_instance.
  Don't use rpc to lock/unlock an instance.
  Convert reboot_instance to take a full instance.
  Include name in a primitive Instance.