code: function handlePromise(query, q, model, resultsPerPage) {
    return Promise.all([
      query.exec(),
      model.count(q).exec()
    ]).spread(function(results, count) {
      return [
        results,
        Math.ceil(count / resultsPerPage) || 1,
        count
      ]
    });
  }
docs: Return a promise with results
  
  @method handlePromise
  @param {Object} query - mongoose query object
  @param {Object} q - query
  @param {Object} model - mongoose model
  @param {Number} resultsPerPage
  @returns {Promise}