title: How to perform multiple Nightmare functions asynchronously
body: <p><br>
  I'm scraping a webpage with Nightmare , and would like to know how to reuse a function over over array of inputs. </p>
  
  <p>Lets say i have a method to retrieve title of a page</p>
  
  <pre><code>function* test(url,callback) {
      var size = { width: 1920, height: 1080, 'use-content-size': true, show: true }
  
      var nightmare = Nightmare(size)
      var title = yield nightmare
      .goto('http://cnn.com')
      .evaluate(function () {
          return document.title
      });
      console.log(title)
      yield nightmare.end()
      callback()
  }
  </code></pre>
  
  <p>I would like to perform this method over a array of urls. So i am using async library in order to run all over the array and perform the <code>test</code> function over <code>urls</code> array of urls.</p>
  
  <pre><code>async.each(urls, test, function (err) {
      console.log('done!');
  });
  </code></pre>
  
  <p>But <code>async.each</code> has no support for generators functions , How can i change the test function to a normal function instead of a generator function.</p>