add heap.c to support garbage_collect