title: Merging anonymous types
body: <p>How can I merge two anonymous types, so that the result contains the properties of both source objects?</p>
  
  <pre><code>var source1 = new
  {
      foo = "foo",
      bar = "bar"
  }
  
  var source2 = new
  {
      baz = "baz"
  }
  
  var merged = Merge(source1, source2) // &lt;-- here's where the magic should happen
  
  // merged: 
  // {
  //      foo = "foo",
  //      bar = "bar",
  //      baz = "baz"
  // }
  </code></pre>