data types moreover those skilled in the art will appreciate that the invention may be practiced with other computer system configurations including hand held devices multi processor systems microprocessor based or programmable consumer electronics network pcs minicomputers mainframe computers and the like the invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network in a distributed computing environment program modules may be located in both local and remote memory storage devices with reference to fig1 an exemplary system for implementing the invention includes a general purpose computing device in the form of a conventional personal computer 20 including a processing unit 21 a system memory 22 and a system bus 23 that couples various system components including the system memory to the processing unit 21 the system bus 23 may be any of several types of bus structures including a memory bus or memory controller a peripheral bus and a local bus using any of a variety of bus architectures the system memory includes read only memory rom 24 and random access memory ram 25 a basic input output system bios 26 containing the basic routines that help to transfer information between elements within the personal computer 20 such as during start up is stored in rom 24 the personal computer 20 further includes a hard disk drive 27 for reading from and writing to a hard disk not shown a magnetic disk drive 28 for reading from or writing to a removable magnetic disk 29 and an optical disk drive 30 for reading from or writing to a removable optical disk 31 such as a cd rom or.