code: function available (moduleName, options) {
    options = options || {}
    var toCheck = getDependenciesToCheck(options, moduleName)
    la(check.array(toCheck), 'expected object of deps to check, was', toCheck)
    var toCheckHash = _.zipObject(
          _.pluck(toCheck, 'name'),
          _.pluck(toCheck, 'version')
      )
  
    log('need to check these dependencies')
    log(toCheckHash)
  
    var nextVersionsPromise = nextVersions(options, toCheck)
    return nextVersionsPromise.then(function (info) {
      return reportAvailable(info, toCheckHash, options)
    }, function (error) {
      console.error('Could not fetch available modules\n', error)
    })
  }
docs: returns a promise