Field cleanup in RubyRunnable.
Fix framing regression.

During 1.7.5 dev cycle, I reworked how backref/lastline are
stored to reduce their impact on performance and bring their
behavior more in line with MRI wrt blocks. In the process of
making this move, I inadvertently turned on the frame requirement
for all core class method names, resulting in any Ruby code that
calls any of those names using a full frame. This has a serious
perf impact on many benchmarks.

This change fixes the framing to only be active when the target
method actually needs to read or write a frame field, reducing the
number of frame-requiring methods significantly and restoring
perf to what it should be.

We are unsure if this change will go into 1.7.5, given the wide
impact a mistake in this fix could have, but it is passing JIT
and AOT ruby19 tests and I will continue to test it to hopefully
get it into the release.
Make ClassIndex into an enum, to prevent issues like #1004.