debugging functions to show term names
basic array prj/tuple elimination
fusion/alet: simplify, bug fix

Some stray cases of "let binding not eliminated" should all be fixed. We need invoke a few extra compute/delay rounds, but in exchange the final shrinking step is not needed and the implementation is simpler.