~jaro/balkon

ref: 86c64fdf20be56f5a5002990a6c193d09a35788e balkon/src/Data/Text d---------
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.
Add ancestor boxes to interface.
Implement finding box edges.
Allow extracting ResolvedBox from WithSpan.
Implement set operations on [ResolvedBox].
Allow extracting spacing from ResolvedBox.
Store direction in ResolvedBox.
Add required textDirection to TextOptions.
Link ResolvedSpan to boxes.
Next