var bgbouncerObject = function (){
	var zulu;
	var $body = $("body");
	var bp;
	var handler;

	this.start = function(delta) {
		zulu = (new Date()).getTime();
		bp = null;

		if (delta === undefined)
			delta = 0;
		handler= setInterval(function() {
			var fbase = Math.abs(((delta+((new Date()).getTime()-zulu)/1000)%120)-60)/60;
			var nbp = Math.floor(fbase*87);
			if (bp != nbp) {
				bp = nbp;
				$body.css({"backgroundColor": "rgb("+bp+","+bp+","+bp+")"});
			}
		}, 250);
	};

	this.stopAndFadeTo = function(r,t) {
		clearInterval(handler);
		$body.animate({"backgroundColor":"rgb("+r+")"}, t);
	};

	this.start();

	return this;
};
