>  So many different ways of doing a GC. Do we have any idea what the difference is?

I'm not sure, the comments seem to imply that there is a difference, but the code is pretty old so it may not be the case anymore.  I'd love to get some summary of the GC stuff one day.