Derive PropertiesV4 from Properties
LimitAttribute: min/max{Items,Props,Length,...}

The code in `limit.rb` is a bit insane and over-abstract now, but I'm
trying to keep the same classes in place for now so that I don't
simultaneously have to rewrite a ton of Schema::Draft1, ::Draft2 etc.
Simplify common inner-schema pattern
Derive DependenciesV4 from Dependencies
Remove unused locals and unneeded each_with_index