function eachLimit(coll, iteratee, callback) {
    eachOf(coll, _withoutIndex(wrapAsync(iteratee)), callback);
}
Applies the function `iteratee` to each item in `coll`, in parallel.
The `iteratee` is called with an item from the list, and a callback for when
it has finished. If the `iteratee` passes an error to its `callback`, the
main `callback` (for the `each` function) is immediately called with the
error.

Note, that since this function applies `iteratee` to each item in parallel,
there is no guarantee that the iteratee functions will complete in order.

@name each
@static
@memberOf module:Collections
@method
@alias forEach
@category Collection
@param {Array|Iterable|Object} coll - A collection to iterate over.
@param {AsyncFunction} iteratee - An async function to apply to
each item in `coll`. Invoked with (item, callback).
The array index is not passed to the iteratee.
If you need the index, use `eachOf`.
@param {Function} [callback] - A callback which is called when all
`iteratee` functions have finished, or an error occurs. Invoked with (err).
@example

// assuming openFiles is an array of file names and saveFile is a function
// to save the modified contents of that file:

async.each(openFiles, saveFile, function(err){
  // if any of the saves produced an error, err would equal that error
});

// assuming openFiles is an array of file names
async.each(openFiles, function(file, callback) {

    // Perform operation on file here.
    console.log('Processing file ' + file);

    if( file.length > 32 ) {
      console.log('This file name is too long');
      callback('File name too long');
    } else {
      // Do work to process file here
      console.log('File processed');
      callback();
    }
}, function(err) {
    // if any of the file processing produced an error, err would equal that error
    if( err ) {
      // One of the iterations produced an error.
      // All processing will now stop.
      console.log('A file failed to process');
    } else {
      console.log('All files have been processed successfully');
    }
});