add garbage collector. compile with -DTRACEGC for debugging output.