Support for duplicate plugins definitions

This could be very useful for logstash config like:

    default['logstash']['agent']['inputs'] = [
      {
        "file" => {
          :path => "/release/logs/slot-*.log",
          :exclude => "/release/logs/slot-assets-genericReq.log",
          :type => "slots_logs"
        }
      },
      {
        "file" => {
          :path => "/release/logs/slot-assets-genericReq.log",
          :type => "assets_json",
          :codec => "json"
        }
      }
    ]


Old syntax is also supported so this change is backward compatible.