title: Unwind, but keep original array in each result row
body: <pre><code>{ 
      name: 'John Smith',
      appointments: [
          {date: 'date1', type: 'type one'},
          {date: 'date2', type: 'type two'}
      ]
  },
  { 
      name: 'Michael Jackson',
      appointments: [
          {date: 'date3', type: 'type three'},
      ]
  }
  </code></pre>
  <p>As a result i need the following:</p>
  <pre><code>{ 
      name: 'John Smith',
      appointment: {date: 'date1', type: 'type one'},
      appointments: [
          {date: 'date1', type: 'type one'},
          {date: 'date2', type: 'type two'}
      ]
  },
  { 
      name: 'John Smith',
      appointment: {date: 'date2', type: 'type two'},
      appointments: [
          {date: 'date1', type: 'type one'},
          {date: 'date2', type: 'type two'}
      ]
  },
  { 
      name: 'Michael Jackson',
      appointment: {date: 'date3', type: 'type three'},
      appointments: [
          {date: 'date3', type: 'type three'},
      ]
  }
  </code></pre>
  <p>Is there any form of aggregation unwind that will unwind <code>appointments</code> into <code>appointment</code>, but will still keep the original appointments array in each result record?</p>
  <p>Appreciate any help.</p>