code: function (cb) {
              return this.mergeOptions({limit: 1}).all().chain(function (r) {
                  return r && r.length ? r[0] : null;
              }).classic(cb).promise();
          }
docs: Returns a promise resolved with  the first record in the dataset, or null if the dataset
  has no records. Users should probably use {@link patio.Dataset#first} instead of
  this method.
  
  @example
  
  //'SELECT * FROM test LIMIT 1'
  DB.from("test").singleRecord().chain(function(r) {
  //e.g r === {id : 1, name : "firstName"}
  });
  
  @param {Function} [cb] a function to be called when the aciton is complete
  
  @return {comb.Promise} a promise resolved with the first record returned from the query.