~jaro/balkon

ref: 62b95c9e616030c3a1bdfe158634b2d6ee9fc4a9 balkon/src/Data/Text d---------
Implement unions of lists of rectangles.
Parametrise rectangle union bias.
Remove TODO which would require an API break.
Simplify code since run direction is always known.
Add TODO for end-of-line whitespace.
Improve BiDi handling of numbers and neutrals.
Autodetect text direction for legacy interface.
Propagate BiDi levels to layout algorithm.

BREAKING: Text direction of the root box is now correctly used for
ordering fragments. Previously, the order was always LTR.
Integrate BiDi levels with spanToRuns algorithm.

Span/box boundaries no longer reset directionality.

BREAKING: Text with no strongly directional characters would
previously be treated as having no direction. It will now be
treated as having the direction defined in TextOptions.
This affects calculated positions.
Convert legacy span directions into levels.
Move BiDi Level to separate module.
Prepare for extending ProtoRun.
Move ScriptCode to appropriate module.
Fix documentation: internal references.
Fix documentation: link to layoutRich.
Fix documentation: missing boxSpacing.
Describe box edges with extensible type.
Expose piecewise paragraph construction.
Consolidate tree types into one.
Handle ancestor boxes in rich layout.
Next