code: function(options) {
        var self = this;
        options = options || {};
  
        var params = this.toJSON();
        params.limit = 0;
        params.count = 1;
        var request = Parse._request({
          route: "classes",
          className: self.className, 
          method: "GET",
          useMasterKey: options.useMasterKey,
          data: params
        });
  
        return request.then(function(response) {
          return response.count;
        })._thenRunCallbacks(options);
      }
docs: Counts the number of objects that match this query.
  Either options.success or options.error is called when the count
  completes.
  
  @param {Object} options A Backbone-style options object. Valid options
  are:<ul>
  <li>success: Function to call when the count completes successfully.
  <li>error: Function to call when the find fails.
  <li>useMasterKey: In Cloud Code and Node only, causes the Master Key to
  be used for this request.
  </ul>
  
  @return {Parse.Promise} A promise that is resolved with the count when
  the query completes.