Add method to recycle blocks back into the allocator
Add surprise flag so a GC call can be requested for the next function