Rerun GVN after UCE
Rework recompiling of scripts invalidated in parallel execution

IonScripts now keep around a set of call targets that it depends on being
compiled for parallel execution. Upon a parallel bailout, the callers of the
bailing script (all the way up the stack) have a 'dirty bit' set which tells
ParallelDo to ensure that all its call targets are compiled. With this change
there is also a new fast path: if this dirty bit is not set and the entry
script already has a parallelIonScript, no compilation is attempted at all.
Currently, we still add the function to the worklist only to determine it's
already compiled.