Fix block nesting

Blocks nested inside an element inside a block where not parsed properly. That is fixed by also running `collectBlocks` on the `body` and `alternate`.
The according test is updated to use this nested case.