Make sync_power_state routines use InstanceList

This makes the periodic sync_power_states task use InstanceList
objects instead of querying conductor directly. This also affects
handle_lifecycle_event() as well, which now uses Instance to
fetch the instance for the event.

Note that none of the power state sync code was covered by unit
tests, so this adds that as well to verify the behavior and instance
object usage. Also note that compute_stop is already instance-object-
ready, so passing one to it is okay.

Related to blueprint unified-object-model

Change-Id: I4e34e0a2b9db77468305aaf1782feb74bcfdccbd
Merge "Make sync_power_state routines use InstanceList"
Merge remote-tracking branch 'm_src_repo/citrix-fixes' into build-temp