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.