title: Merge contents within list of list by duplicate name
body: <p>Given a list of lists as such, is there an elegant way to convert original to treated? I'm using simple values like 1,2,3, but values could be data frames or whatever.  The goal is not to de-dupe the contents of each unique named, simply to de-dupe names by merging contents.</p>
  
  <pre><code>original = structure(list(name1 = structure(list(one = 1, two = 2, three = 3), .Names = c("one", 
  "two", "three")), name2 = structure(list(a = 9), .Names = "a"), 
      name1 = structure(list(four = 4, five = 5, six = 6), .Names = c("four", 
      "five", "six")), name2 = structure(list(b = 8), .Names = "b")), .Names = c("name1", 
  "name2", "name1", "name2"))
  
  treated = structure(list(name1 = structure(list(one = 1, two = 2, three = 3, 
      four = 4, five = 5, six = 6), .Names = c("one", "two", "three", 
  "four", "five", "six")), name2 = structure(list(a = 9, b = 8), .Names = c("a", 
  "b"))), .Names = c("name1", "name2"))
  </code></pre>