pts-to: handle constant array offsets too

We are approaching to soundness ;).
pts-to: clamp negative indexes

Previously, we triggered an assert, but as there is real code to
trigger it, we have to handle that.
pts-to: filter invalid cases

Do not add a member to pointer sets if
* the offset is nonzero for functions and NULLs
* the sum is more than the size of a global or alloca
pts-to: crop on three pointers to the same

If we are pointing to the same object more than three times, but with
a different offset, there is a high probability that we are iterating
a loop. Crop the sequence to terminate in a reasonable time.