fixes #3145 - host with a lot of parameters quicker
Fixes #10731 - Allow matches to merge with default values
fixes #10232 - moving validations and casting out of lookup key and value
Refs #3809 - Enable cop Style/IfUnlessModifier
Fixes #10409 - Rails 4 compatible changes with Rails 3
Fixes #8333 - correct matcher values with multi-key matchers
Fixes #9787 - correctly typecast default values
JSON and YAML default values were double typecasted, once by activerecord and then by value_of_key method.
Fixes #9673 - treat YAML and JSON lookup keys as strings
Refs #3809 - Remove cops for empty lines
Fixes #8052 - allows erb in array and hash params
Fixes #8551 - use most specific matcher for inherited hostgroups
Host recieves correct smart_class_parameter value when multiple overrides forinherited host groups exist for parameter.
Fixes #3260- Allows puppet to manage value of smart class parameter that can be overrided
Fixes #3309 - Support deep merging of hash and array structures in smart class parameters
Refs #3809 - Use parentheses in method definitions
Refs #3809 - Fix a few rubocop TODOs
fixes #7163 - on host's edit page, show the source for the value of puppet class parameters.
fixes #5246 - remove second host/class lookup impl so config groups are included in ENC output
fixes #5105 - remove Setting['remove_classes_not_in_environment']
fixes #2260 Allow ERB in ENC global / class parameters
Adds code to parse the global & class parameters, and adds a setting (default true) to disable this if needed. Also has some tests.
fixes #2411 - move files in /models to /concerns, /services, /mailers, /observers