Constructs a HandleCache object
HandleCache<T>( CHandleFormatter<T>* formatter = 0 );
A pointer to an object derived from CHandleFormatter<T>. If set to 0, then a default formatter will be created.
Once the object has been passed to the constructor, the object
is owned by the HandleCache, and will be deleted by it
at the appropriate time.
The developer should not delete instances of formatters
that have been passed to the constructor.
The developer should not create instances of formatters
on the stack; they must be created on the heap,