Properly pretty-print let expressions and do expressions.

Since pretty-printing does not generate proper layout, we always need the
braces. Without braces, we print out programs that cannot be parsed as Haskell.