Support `patternProperties` when considering non-true `additionalProperties`

This makes `patternProperties` correctly interact with `additionalProperties` according to [the docs](http://jsonary.com/documentation/json-schema/?section=keywords/Object%20validation#keywords/Object%20validation/03%20-%20additionalProperties).