Fix buffer join bug in layout.

Blocks were being `join`ed to prevent max argument count errors, but
then that invalidated the "mark is an entire buffer index" rule, which
meant that blocks were being discarded because their target mark was not
being found.

Thanks to james for reporting!
v0.7.11