---- the sadness of all of this, is that I cann't even use this feature, as I don't have malloc
just use a monotonic buffer allocator starting from null (each allocation bumps up some pointer by the specified size to give room for the object)