Support Arrays of Objects

Arrays of complex objects are sometimes returned in array types. This
provides limited support for complex objects in array type responses. Some
limitations with this implementation are the ability to use properties
directly in a definition. All properties must "$ref" a definition in order
to work. Presently, "$ref" is required for properties in more than one
place, so the tradeoff is acceptable. Support for arrays of objects
unblocks a critical bug in the build resource of the Platform API, allowing
an array of `line` objects in responses to clients.