Fix use of stale instance data in compute manager

There's a number of cases of using stale instance data in the compute
manager.  Ie, there are a lot of calls to self._instance_update() that
ignore the response and use a stale copy of data from that point
forward.

Related to bug 1098727

That bug id is for 'reboot_instance' only, so there's a separate patch
to fix that method.

Change-Id: Ifec6bf23831b51c8679528428ee475c906c1f536
Convert ConfigDriveHelper to being a context manager itself.

This is a little bit less awkward than the previous implementation,
and is based on a suggestion from Padraig Brady.

Change-Id: If8b09a41d21777a4bd56af16e1f7e02d61d1dd4e
Merge "Convert ConfigDriveHelper to being a context manager itself."
Merge "Fix use of stale instance data in compute manager"