var CookieJar = Class.create({
				initialize: function(container){
						this.container = container;
				},
				put: function(key,value){
						var cookies = this._cookies();
						cookies[key] = value;						
						this._writeCookie(Object.toJSON(cookies));
				},
				get: function(key){
						return this._cookies()[key];
				},
				empty: function(){
						this._writeCookie('{}');
				},
				remove: function(key){
						var cookies = this._cookies();
						delete cookies[key];
						this._writeCookie(Object.toJSON(cookies));
				},
				_cookies: function(){
						var that = this;
						var cookies = {};
						document.cookie.split(';').each(function(cookie){
								var cookiePair = cookie.split('=');
								if(cookiePair[0].strip() == that.container){
										cookies = cookiePair[1].replace(/__comma__/g,',').evalJSON();
								}
						});						
						return cookies;
				},
				_writeCookie: function(value){
					document.cookie = new Template("#{container}=#{value}; path=/").evaluate({container: this.container, value:value.replace(/\,/g, '__comma__')});
				}
		});
