A finalizable object for MMTk. MMTk needs to know the actual object reference in the type,
while a binding can use this type to store some runtime information about finalizable objects.
For example, for bindings that allows multiple finalizer methods with one object, they can define
the type as a tuple of (object, finalize method), and register different finalizer methods to MMTk
for the same object.
The implementation should mark theird method implementations as inline for performance.