This patch clears all the cases where Throwable is caught in a
thread's run() method. Given these don't have anywhere that passing
java.lang.Error subclasses up to could be a problem for, they're all
fairly safe cases for correcting.
The remaining 19 cases I need to trace through the code and double
check handling, for. To be honest, I've got other things I want to
write patches for, first, so they'll probably be delayed a bit.