Make notifications use Instance.get_flavor()

This makes the notifications.info_from_instance() method use the
Instance.get_flavor() method to retrieve flavor information, instead
of assuming that it is in system_metadata. This requires that it is
passed an Instance object, so this patch also converts the code to
make that assumption (which needs doing anyway) and fixes remaining
dict-using callers to pass the object. This will be required by a
subsequent patch to refactor flavor storage.

Related to blueprint flavor-from-sysmeta-to-blob

Change-Id: I6e4e07807cb6cd173d54137d4fe8d9b1a0d49709
Merge "Make notifications use Instance.get_flavor()"