gamechanger/schemer — pull request #1 by tleach (2014-02-06 00:23:59+00:00)
Title: Rewrite of embedded arrays

This is a backward compatibility-breaking change which implements a new syntax for expressing embedded arrays in documents.

The previous syntax of just putting a type in a single item list to specify an embedded array, was inadequate for a number of reasons.
- Impossible to declare list of lists and retain schema type-checking
- Impossible to make lists validatable, required and have a default value
- Syntax is clunky, and cumbersome to deal with.

This commit changes the syntax from this:
```python
"things": [basestring]
```
to this:
```python
"things": {"type": Array(basestring), required: True}
```

In addition, support has been added for validating embedded lists and providing default values for them. Plus some additional validators designed for lists have also been added.