def append!(errors, attr, key, val)
      return unless val.present?

      errors ||= {}
      errors[attr] ||= {}
      errors[attr][key] = val
    end
def append!(errors, attr, key, val)
      return unless val.present?

      errors ||= {}
      errors[attr] ||= {}
      errors[attr][key] = val
    end
Mutates errors, adding in error messages scoped to the attribute and key
 @param [Maybe Hash] errors -
 @param [Symbol] attr - name of attribute under check
 @param [Symbol] key - name of validation step
 @param [Object] val - data to append