encoding.c (enc_m_loader): defer finding encoding object not to
be infected by marshal source. [ruby-core:71793] [Bug #11760]
marshal.c (r_object0): enable compatible loader on USERDEF
class. the loader function is called with the class itself,
instead of an allocated object, and the loaded data.
marshal.c (compat_allocator_table): intialize
compat_allocator_tbl on demand.
object.c (rb_undefined_alloc): extract from rb_obj_alloc.