The nested exception classes should be removed. Exception nesting is handled quite well by the Java 1.4 platform classes.
Fine w/me as long as the stack traces for the native throwables a readable with deep nesting. Meant to look into this, but did not.
We don't need an UnreachableStatementException anymore. Instead you should throw an AssertionError (this is noted in the assertion facilitates documentation).
Perhaps should be changed to UnreachableStatementError which extends AssertionError so that USE could handle the details of message generation.
I'm not sure why we need the platform.Java class at all right now, as we only support 1.4, and our stuff won't even run on an earlier version. If we do keep it, it should use a type safe enumeration. I am happy to make this change.
I would keep it, so that we can use it to detect the VM version easily. If you want to turn it into a type safe enum go for it.
--jason
