title: Flatten nested array of objects, renaming keys to an iterator
body: <p>I have an array of objects, with each object looking like the following (a poll response):</p>
  
  <pre><code>{
  "slug": "18-AZ-Gov-GE-DvF",
  "name": "2018 Arizona Gubernatorial GE",
  "tags": [],
  "charts": [],
  "election_date": "2018-11-06",
  "n_polls": 1,
  "created_at": "2017-06-13T13:32:26.000Z",
  "responses": [
   {
   "label": "Ducey",
   "name": "Doug Ducey",
   "party": "Republican",
   "incumbent": true
   },
   {
   "label": "Farley",
   "name": "Steve Farley",
   "party": "Democrat",
   "incumbent": false
   },
   {
   "label": "Other",
   "name": "Other",
   "party": null,
   "incumbent": false
   },
   {
   "label": "Undecided",
   "name": "Undecided",
   "party": null,
    "incumbent": false
   }
  ]
  },
  </code></pre>
  
  <p>I need to flatten the array accessed by the <code>responses</code> key so that each object keyed to its iterator.</p>
  
  <p><strong>The final object should look like:</strong></p>
  
  <pre><code>{
  "slug": "18-AZ-Gov-GE-DvF",
  "name": "2018 Arizona Gubernatorial GE",
  "tags": [],
  "charts": [],
  "election_date": "2018-11-06",
  "n_polls": 1,
  "created_at": "2017-06-13T13:32:26.000Z",
   "label1": "Ducey",
   "name1": "Doug Ducey",
   "party1": "Republican",
   "incumbent1": true
   "label2": "Farley",
   "name2": "Steve Farley",
   "party2": "Democrat",
   "incumbent2": false
   "label3": "Other",
   "name3": "Other",
   "party3": null,
   "incumbent3": false
   "label4": "Undecided",
   "name4": "Undecided",
   "party4": null,
    "incumbent4": false
  },
  </code></pre>
  
  <p>The <a href="https://stackoverflow.com/questions/48435515/how-to-flatten-nested-array-of-object-using-es6">answers I've seen</a> do not rename the object keys when flattening or are performed on a collection.</p>
  
  <p>I've tried several solutions, but wanted to see if there's an easy es6 way before I really dive in.</p>