Improve GC finalisation code; add option to disable it.
diff --git a/py/gc.h b/py/gc.h
index f8aeb39..dd6f60d 100644
--- a/py/gc.h
+++ b/py/gc.h
@@ -3,8 +3,7 @@
 void gc_collect_root(void **ptrs, machine_uint_t len);
 void gc_collect_end(void);
 void gc_collect(void);
-void *gc_alloc(machine_uint_t n_bytes);
-void *gc_alloc_mp_obj(machine_uint_t n_bytes);
+void *gc_alloc(machine_uint_t n_bytes, bool has_finaliser);
 void gc_free(void *ptr);
 machine_uint_t gc_nbytes(void *ptr);
 void *gc_realloc(void *ptr, machine_uint_t n_bytes);