var Request = (function(){
	function constructor(dataSource, data, process){
		this.dataSource = dataSource;
		this.data = data;
		this.process = process;
		this.XMLrequest;
		$this = this;
		this.connect();
	}
	
	function recieveXML(){
		if(XMLrequest.readyState == 4){
			($this.process)(XMLrequest.responseXML);
		}
	}
	
	constructor.prototype.createRequest = function(){
		return window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
	};
	
	constructor.prototype.connect = function(){
		XMLrequest = this.createRequest();
		XMLrequest.onreadystatechange = recieveXML;
		XMLrequest.open("GET", this.dataSource+"?"+this.data, true);
		XMLrequest.send(null);
	};
	
	return constructor;
}
)();