At a minimum have parser treat source as UTF-8 by default in 2.0 mode
Catch all exceptions when running ant subtask, to avoid bubbling.

This should fix #653. We may catch too much here, but it seems
the intent of the rescue block was to capture most exceptions. It
also would have caught the ant ExitStatusException as a
NativeException before, but that stopped working after we stopped
wrapping Java exceptions. The fix should catch it properly now.
Reduce races in Mutex#sleep spec.