Simplify templates by improving block rendering

The block rendering algorithm now adds the linebreaks to the statements
automatically, and at their correct positions. I didn't like messing
with other nodes' templates while rendering, but I couldn't think of any
scenario where this could go wrong.

Notice the linebreaks in templates are still needed for non-block
children, like "end" keywords.