I have applied this logic to your code and made some changes [1].
[1]: http://lilybin.com/bt0t2d/11
That's great, Aaron!
Now we have a very robust method for *easy* spacing *complex* vertical layouts.
I would not even consider this a "hack", because placing a barrier between objects is something logical and natural
in many situations. And giving a position to the objects is something logical and natural too, for complex layouts.
Now, it would be great if this fully works for SVG too.
As you can see, the OttavaBracket creates collisions in the SVG output when an outside-staff-priority is assigned.
Then, this spacing method works fine for PDF output, but has a bug for the SVG one.
A request has already be sent to the bug ML, but I suspect that the development of the SVG layer is not active anymore.
Honestly, I don't know where to start investigating in the Lilypond src (framework-svg.scm? output-svg.scm?)
Thanks again for your patience!