Don't overshoot the BBInvar array when the last block in the function is in loop scope
Don't keep pointers into a DenseMap (they reallocate when it grows)
Move all modification of the source program before shadows are constructed
Support noalias-args as pointer bases for argv, and fix alias queries involving null pointers by classifying them as PBs instead of scalars