## 0.6
Breaking changes:
* Add `Constant Aeson.Value` type to `Schema`
* Change Number to take a `Bound` for the boundary. Before this the upper bound could not be `-1`.
* Change `Value` and `Array` to take a `LengthBound`. The difference from Number is that these values should always be `>= 0` if present.
Minor:
* Add `Bound { lower :: Maybe Int, upper :: Maybe Int }`
* Add `unbounded` as a shorthand for a `Bound` without restrictions
* Add `LengthBound { lowerLength :: Maybe Int, upperLength :: Maybe Int }`
* Add `unboundedLength` as a shorthand for a `LengthBound` without restrictions
* Add remaining `JSONSchema` instances based on existing Aeson instances. `UTCTime`, `Set`, Lazy `Text`, and tuples up to length 7.
* Add `enum` combinator as a shorthand for creating a `Choice` of `Constant`s
## 0.5
* `JSONSchema` instances for `Data.Vector`, `Data.Map`, and `Data.HashMap`
* Add `Map` type for json objects with arbitrary keys
* Add `Any` type for any json value
* Don't generate empty field names in ojbects for constructors without labeled fields