code: function lookup(identifier, callback) {
      var url = Url.parse(identifier);
      if (url.protocol != "acct:" && url.protocol != "http:") {
          callback(new Error("Protocol not supported"));
          return;
      }
      _fetchHostMeta(url.hostname, function (err, template) {
      	if (err) return callback(err);
      	_fetchUserMeta(template, identifier, function (err, meta) {
      		if (err) return callback(err);
      		return callback(null, meta);
      	});
      });
  }
docs: /*
  Perform a webfinger lookup for the provided acct: uri, the result is a JSON representation
  of the user XRD.
  
  @param {String} identifier
  a string representation of a valid acct: uri
  @param {Function} callback
  a callback function of the form function(err, result)
  
  The XRD object has the form:
  var xrd = {
  "subject": 	the subject of the xrd lookup
  "alias"	 : 	an array of strings (a xrd can have more than one alias)
  "links"  :  an array of links
  }
  
  TODO Add support for HTTP URIs