Using bind instead of promises or stacked callbacks
I've realized there's no need for all these prototype functions and binds.
When using node.js, in a file, the normal named functions are private to the file, so it can be used as methods.

var self = {
  parallelLimit: 10
}

function generateLocFieldForDocs(docs) {
  log('list obtained')
  async.eachLimit(docs, self.parallelLimit, generateLocFieldForDoc, generateLocFieldForDocsDone)
}

function generateLocFieldForDoc(doc, done) {
  self.collection.update({_id: doc._id},
  {$set: {
    loc: {...}
  }}, function(err, result) {
    errorHandler(err)
    done()
  })
}

function generateLocFieldForDocsDone(err) {
  errorHandler(err)
  generateLocFieldNextSection()
}


Using module.export.myFunction = makes it public