var SingletonClass =
		{
			create:
				function singletonclass__create()
				{
				
					var ProtoClass = Class.create.apply( Class, arguments );
					
				//	instance hidden inside our closure:
					var instance;

				/*	extend the Class created above to make a new class that
					can only be instantiated once: */
					ProtoClass =
						Class.create( ProtoClass,
						{
							initialize:
								function( $super )
								{
									if( instance )
										throw( "cannot create another - this is a singleton" );
									
									$super();
								}
						});

					instance = new ProtoClass();

				//	Allow access to instance via a Class function:
					ProtoClass.get = 	function ()
										{	return instance;
										};
					return ProtoClass;
			}
		};
