Enable incremental compilation.

Don't look at me like that.
Add threads 1-by-1 to ThreadGroup.list, to avoid adding a null.

Because RubyThread objects are held in a weak set inside
ThreadGroup, blindly copying them into an array *might* cause us
to insert a null somewhere. This new logic at least ensures that
does not happen, though it may not fix @halorgium's issue reported
on IRC today.
Temporarily rename problematic remove method to removeFrom.

Final decision about how to fix this still remains with @yokolet

See #858.