implements the IOM generic object model.
- Each object has a type
- Each object may have an identity
- Each object has a set of properties
- Each property has none, one or more values
- A value is either primitive (String) or structured (IomObject; IomObject is a recursive structure)