	var BLIP = {
		Class: {
			namespace: function(name,value) {
				var parts = name.split('.');
				var type;
				var part;
				for (var i=0; i< parts.length; i++) {
					part = parts.slice(0,i+1).join('.');
					eval("type = typeof(" + part + ");");
				
					if (type == "undefined") {
						eval(part + " = {}");
					}
				}
				eval(name + " = value");
			},
	
			create: function(name,superClass,constructor,our) {
				BLIP.Class.namespace(name,constructor);
				if (superClass && superClass != Object && superClass != Function) {
					var inheritence = function() {}
					inheritence.prototype = superClass.prototype;
					constructor.prototype = new inheritence();
					constructor.prototype.constructor = constructor;
					constructor.baseConstructor = superClass;
					constructor.superClass = superClass.prototype;
				}
	
				for (var i in our) {
					constructor.prototype[i] = our[i];
				}
			
				return constructor;
			}
		}
	};
