Adds support for generating v3 JSON Schemas.

* By default assigns `"required": true` to every property, unless a question mark `?` is matched.
* When `*` operator is matched as a suffix of an array, orderly generates the `additionalItems` property, instead of `additionalProperties`. However, the latter is still generated when `*` is found after object declarations.
* `patternProperties` is not supported yet.

This PR deprecates generating v2 JSON schemas.