DO NOT MERGE: Fix implementation of Thread.isAlive

(Originally submitted to master, pulling over to eclair.)

The implementation of Thread.isAlive() was changed a couple of years ago
as part of the Harmony integration.  The current version relies on the
thread's state value to determine its liveness, but the VM was
originally written to be like JamVM, which used GNU ClassPath, which
uses the vmThread field instead.

It looks like it's possible for Thread.join() to get stuck, though as
far as I know this hasn't happened.

We're essentially rolling back part of 27774-p9.  For internal bug 1966734.

Also: ran --update on test 044.
1 file changed