TEMP: Fix #851: CATCH/quit interaction with TRY

Try_Block_Halt attempts to catch both error conditions and halt
conditions (QUIT, HALT). However, Try_Block_Halt incorrectly realises
this by simply overwriting the error handler stack with the (extended)
halt handler stack, effectively throwing away all other _error_
handlers.

The only user of Try_Block_Halt is CATCH/quit. The effect of the
erroneous implementation is that CATCH/quit disables other (outer) error
handlers (TRY, ATTEMPT), as reported in CureCode ticket #851.

However, CATCH/quit does not even need Try_Block_Halt to catch errors as
well as quit conditions. Errors are simply rethrown by CATCH/quit. This
commit fixes the erroneous implementation in Try_Block_Halt by not
having it catch errors at all, but only quit conditions.

Also comment similar patterns in top-level handlers which are actually
safe.

This fixes CureCode issue #851.