function OH_slideshow(){
		
	this.config = {
		curr : 1,
		speed : 350,
		curr : 1,
		nav : false
	},
	
	this.start = function(){
		var SS = this;
		this.config.numItems = $(this.config.selector + " li").size();
		if(this.config.numItems <= 0) {
			$(this.config.selector).html("No items in slideshow");
			return false;
		}
		
		if(this.config.nav === true) {
			SS.buildNav();
		}
		
		SS.goTo(1);
		if(this.config.numItems > 1)
			this.Interval = setInterval(function(){SS.loop()},this.config.delay);
	},
	
	this.goTo = function(id){
		this.config.curr = id;
		$(this.config.selector + " li").fadeOut(this.config.speed);
		$(this.config.selector + " li:nth-child("+id+")").fadeIn(this.config.speed);
		
		if(this.config.nav == true) {
			$(this.config.selector + " + .controls li a.active").removeClass("active");
			$(this.config.selector + " + .controls li:nth-child("+id+") a").addClass("active");
		}
	},
	
	this.loop = function(){
		if (this.config.curr >= this.config.numItems)
			this.config.curr = 1;
		else
			this.config.curr++;
	
		this.goTo(this.config.curr);
	},
	
	this.buildNav = function(){
		txt = "<ul class=\"controls\">";
		for(i=1;i<=this.config.numItems;i++){
			txt += '<li><a val=\"'+i+'\" href="#">'+i+'</a></li>';
		}
		txt += "</ul>";
		$(this.config.selector).after(txt);
		var SS = this;
		$(this.config.selector + " + .controls li a").bind("click", function(){
			id = $(this).attr("val");
			if(SS.config.curr != id) {
				SS.goTo(id);
				window.clearInterval(SS.Interval);
			}
		})
	}

}
