function xmljs (doc) {
   var obj = new Object;
   var elt = doc.firstChild;
   var i;

   obj._type = elt.tagName;
   var attrs = elt.attributes;

   for (i = 0; i < attrs.length; i++) {
      obj[attrs[i].nodeName] = attrs[i].nodeValue;
   }

   return obj;
}


function ajaxCall(path, args, callback, data) {
    var req = browser.newXMLHttpRequest();

    req.onreadystatechange = function () {
	if (req.readyState == 4) {
	    callback(xmljs(req.responseXML), data);
	}
    };

    var argstring = "_=1";
    for (name in args) {
	argstring += "&" + encodeURIComponent(name) + "=" + 
	    encodeURIComponent(args[name]);
    }

    req.open("POST", "http://wigflip.com" + path);
    req.setRequestHeader('Content-Type',
			 'application/x-www-form-urlencoded');
    req.send(argstring);
}
