code: function promisedRequest(url) {
  	var taskId = this[0], req = Object.create(this[1]);
  	var method = req.method || 'get';
  
  	if ('args' in req) {
  		req.url = url + taskId + find_separator(url) + req.args
  	}
  	else {
  		req.url = url + taskId
  	}
  
  	return new Promise(function(resolve, reject) {
  		return request[method](req, function(err, response, body) {
  			return err ? reject({error: err, headers: response && response.headers})
  				: resolve({body: body, headers: response.headers});
  		});
  	});
  }
docs: url is request prefix, maped from distributionScope - <this> is parament array, ex: [taskId, querystring || queryobject]