Utilities used by several optimization passes run in the later stages

Late optimizations modify the tree such that stack flow information is no longer accurate, since we punt in splice-quot and don't update everything that we should; this simplifies the code, improves performance, and we don't need the stack flow information after this pass anyway.