cleanup the no-fusion forcer
flatten some needless let-binds

that is: "let x = term in x" -> "term"
be careful about scope of binders: improve memory usage

Don't flatten the environments of both the binding and body expressions. See comments.