Try and fix assertions caused by Ctrl-C
Try and fix assertions caused by Ctrl-C

Interrupts and exceptions were not particularly well thought-out in
R3-Alpha, including basic questions like "what if someone presses
Ctrl-C during the code responding to the Ctrl-C which is delivering
the message that there was a cancellation".  Ren-C set up stricter
rules to notice when there were problems, without necessarily having
a solution to the problems ready.

Rather than assert, this change simply won't respond to Ctrl-C
requests so long as there is no top-level HALT handler in place.  The
signal will remain pending until that handler comes up.  Hence, the
message delivered in response to a HALT should be delivered in a
deterministically finite (and small) amount of time.

This change also adjusts the signal response handler to update the
evaluation count before running more code (so that the eval count
won't be interrupted by more evaluations with the number still at 0).

draegtun/ren-c,giuliolunati/ren-c,draegtun/ren-c,hostilefork/rebol,kealist/ren-c,rgchris/ren-c,giuliolunati/ren-c,giuliolunati/ren-c,rgchris/ren-c,draegtun/ren-c,rgchris/ren-c,codebybrett/ren-c,hostilefork/rebol,kealist/ren-c,codebybrett/ren-c,draegtun/ren-c,giuliolunati/ren-c,hostilefork/rebol,hostilefork/rebol,draegtun/ren-c,kealist/ren-c,codebybrett/ren-c,draegtun/ren-c,kealist/ren-c,kealist/ren-c,hostilefork/rebol,codebybrett/ren-c,codebybrett/ren-c,codebybrett/ren-c,rgchris/ren-c,giuliolunati/ren-c,rgchris/ren-c,kealist/ren-c,hostilefork/rebol