Enhance object inheritance
Enhance object inheritance

Objects could only inherit fields from the NovaObject base class.  This
patch fixes this so that any object subclassed from another object will
inherit all fields.

Related to blueprint unified-object-model

Change-Id: Iaf511be490a44d357b4f527d37a64f3794c60afe

citrix-openstack-build/oslo.versionedobjects,openstack/oslo.versionedobjects