Move allocation to always allocate in constructor
Add error handling for when readdir_r() fails
Remove dead code from Fixnum::pow

This removes dead code since we already check exp < 0 and exp == 0
before running this code.
Deallocate root when deconstructing HeapDump object
Always initialize frame properties
Close handles opened with dlopen()
Fix checks in finalizer

This makes sure we properly check whether lists_ exists before trying to
loop over it and deallocating it.
Remove useless check on call_frame->stk array
Always initialize all properties for jit block
Move destroying tooling env to destructor

This is also set up in the constructor, so mimic deallocation in the
destructor.
Cleanup unnecessary set boolean flag
Initialize all properties for inline block
Initialize all properties for JIT visitor
Initialize all properties for JIT method info
Simplify encoding compatibility logic

This had dead code paths and was more complicated than necessary.
Remove boolean flag for util lock

This can be racy in the way it was used and it's not needed anyway since
this is not used as a recursive lock anyway.
Fix mark_line check in immix gc

We should only do this check separately for small objects.
Add additional error checking in IO on fcntl calls
Conditionally check on the class and don't overwrite it
Use dispatch resolve return value instead of checking missing status