Base class alternative to ExtensibleObject for objects customizable through the metadata system.
Similar to ExtensibleObject: the
describe() method provides access to the related object-type metadata.
The
getCustom() method is the central point to retrieve and store the objects attribute
values themselves.