title: linq union merging sublists
body: <p>Given a list of objects as follows:</p>
  
  <pre><code>Instance
   - InstanceID
  
  Version
   - VersionID
   - List&lt;Instance&gt; Instances
  
  Activity
   - ActivityID 
   - List&lt;Version&gt; Versions
  </code></pre>
  
  <p>I want to produce a list like this:</p>
  
  <pre><code>Activity
   - ActivityID
   - List&lt;Instance&gt; Instances
  </code></pre>
  
  <p>currently stuck at:</p>
  
  <pre><code>(from activity in activities
   select new {
              activity.ActivityID,
              VersionGroup = (from version in activity.Versions
                              group version by version.ActivityID into versionGroup
                              select versionGroup)
              })
  </code></pre>
  
  <p>Just not sure how to get to the instance level.</p>
  
  <pre><code>(from activity in activities
   select new { activity.ActivityID,
                Instances = activity.ActivityVersions.SelectMany(v =&gt; v.ActivityInstances).AsEnumerable() });
  </code></pre>