def load(*configs)
      configs.each do |config|
        config.each do |k, v|
          if self[k] && self[k].is_a?(Array)
            self[k] += v
          else
            self[k] = v
          end
        end
      end

      self
    end
def load(*configs)
      configs.each do |config|
        config.each do |k, v|
          if self[k] && self[k].is_a?(Array)
            self[k] += v
          else
            self[k] = v
          end
        end
      end

      self
    end
Take a collection of config hashes and cascade them, meaning values
 in later ones override values in earlier ones.

 E.g., this results in +{'a'=>'x', 'c'=>'d'}+:
     load({'a'=>'b'}, {'c'=>'d'}, {'a'=>'x'})

 And this results in +{'a'=>['b', 'c']}+:
     load({'a'=>['b']}, {'a'=>['c']})

 @param [Array<Hash>] The configuration hashes.
 @return [Config] The final configuration value.