Export part of the instruction combiner used to simplify cast-gep-cast sequences, and proactively emit concise GEPs when possible.

This slows the Save phase down a bit but improves time to -std-compile-opt a program by about 10x (the inst combiner can be very inefficient).