Create instance_extra items atomically with the instance itself

This cleans up how we create instance_extra items by making them
go as part of the db.instance_create() call and be created according
to the instance.extra backref. It should basically eliminate the need
for .create() methods on the individual objects. Since this also makes
the Instance object create pci_requests the way it was doing for
numa_topology, this updates (and freshens) the test for that to make
sure that pci_requests get created properly as well.

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

Change-Id: I01c490c3cb731133caa8c2c93824458a694e9630
Merge "Create instance_extra items atomically with the instance itself"