code: function doReadDatasetClientWithRecords(datasetClientId, callback) {
    debug('doReadDatasetClientWithRecords datasetClientId = ', datasetClientId);
    async.waterfall([
      async.apply(doReadDatasetClient, datasetClientId),
      function listRecords(datasetClientJson, next) {
        if (datasetClientJson) {
          listDatasetClientRecords(datasetClientJson, null, function(err, localRecords) {
            return next(err, datasetClientJson, localRecords);
          });
        } else {
          return next();
        }
      }
    ], function(err, datasetClientJson, localRecords) {
      if (err) {
        debugError('Failed to doReadDatasetClientWithRecords due to error %s :: datasetClientId = %s', err, datasetClientId);
        return callback(err);
      }
      if (datasetClientJson) {
        datasetClientJson.records = localRecords;
      }
      return callback(null, datasetClientJson);
    });
  }
docs: Read the dataset client object from the `fhsync-datasetClients` collection, as well as the associated records for the datasetClient from the `fhsync-<datasetId>-records` collection.
  The records will be added to the datasetClient json object with the key `records`
  @param {String} datasetClientId
  @param {Function} callback