I did not want to introcude an ActiveSupport dependency for this. What do you think if I accept an array of structure Rule instances : 
```
    Csv2Hash::Definition.new(rules, type = Csv2Hash::Definition::COLLECTION, structure_rules: [Csv2Hash::StructureValidator::MinColumn.new(2), Csv2Hash::StructureValidator::MaxColumn.new(3))
```