[Fix #876] Deep merge hashes in configuration when overriding

Deep (recursive) merge that was removed in #347 is added back. The data structure in the `CollectionMethods` config parameters is changed so `PreferredMethods` holds an array of single key/value hashes instead of a big hash. That way it doesn't get merged. `PercentLiteralDelimiters` will be merged.