Derive IP{4,6} from parent IPAttribute
Reduce flog score for Validator#build_schemas
General attributes/*.rb refactor

Mostly extractions to local variables.
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.