This patch speeds up make-instance. In other words, if your program
spends a lot of time creating new CLOS objects, it will create them
faster with this patch loaded.

How it works: faster-make-instance-patch eliminates some hash table
lookups during make-instance. One of the lookups is eliminated from
every make-instance call. The other lookup is prevented only if the
first argument to make-instance is a quoted symbol (the lookup is then
done at load time instead of run time).

Timing: (make-instance 'foo) where the class foo has no applicable
user defined make-instance, initialize-instance, shared-initialize, or
allocate-instance methods used to take 421 microseconds on a IIfx.
With the patch loaded, it takes 189 microseconds.  After (defparameter
*foo* 'foo), (make-instance *foo*) used to take 420 microseconds on a
IIfx. With the patch loaded it takes 295 microseconds.

The only known side effect of faster-make-instance-patch (other than
the speed improvement) is that if a file contains a call to
make-instance with a quoted symbol for the first argument, then a fasl
file created from that file with the faster-make-instance-patch loaded
will error if loaded into an MCL without the
faster-make-instance-patch.

What this means: a fasl file compiled with faster-make-instance-patch
loaded will generate an error if it is loaded into an MCL 2.0 that
does not contain the patch.
