Move "safe fetch" to after GROUP! testing
Move "safe fetch" to after GROUP! testing

Because all operations processing instructions in PARSE needed to
eventually fetch the next instruction, the code was biased to save the
current rule into `rule` and then fetch up front.  This included cases
of GROUP! or variables that resolved to GROUP!, which may execute code
that would disrupt the state of the fetch.

As a consequence, all fetching had to be deferred until after any
arbitrary user code ran.  This is less convenient, but required.  It
would be possible to go through and group things to use the fetch less
often, or to make a fetch-and-continue, but this gets the tests passing
for now.

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