whole_func_string: function(method, where, query, followLink, callback) {
      var opts = {};
      //check if followLink is a function, if so do backwards compatable support
      //if not, proceed normally
      if(typeof followLink == 'function')
      {
          //set nonexistant callback to followLink
          callback = followLink;
          //default followLink flag to true
          followLink = true;
      }
      if(query != null) opts.qs = query;
      opts.headers = {};
      opts.headers['Authorization'] = "SSWS " + apiKey;
      opts.method = method;
      opts.uri = url.parse(where);
      request(opts, function(error, clientResp, resp) { handleResponse(error, followLink, clientResp, resp, callback) });
  }
func_code_string: function(method, where, query, followLink, callback) {
      var opts = {};
      //check if followLink is a function, if so do backwards compatable support
      //if not, proceed normally
      if(typeof followLink == 'function')
      {
          //set nonexistant callback to followLink
          callback = followLink;
          //default followLink flag to true
          followLink = true;
      }
      if(query != null) opts.qs = query;
      opts.headers = {};
      opts.headers['Authorization'] = "SSWS " + apiKey;
      opts.method = method;
      opts.uri = url.parse(where);
      request(opts, function(error, clientResp, resp) { handleResponse(error, followLink, clientResp, resp, callback) });
  }
func_documentation_string: /*
  Old version did not have followLink flag, so to support backwards compatibility
  we check if followLink is a function
  if so, the caller is expecting the old version of this function,
  if followLink is a boolean, caller is expecting new version
  
  *NOTE* all this is only relevant to Listing functions, nothing else uses filters