Fixing support for Array schemas and targetSchemas

This is a first take on supporting arrays in Schema or TargetSchema
rather than objects.

Pending:

 * Support for optional arrays