~jaro/balkon

ref: 5b76807e4e2a0b711b110d25719acdd3fea043a4 balkon/src/Data/Text/ParagraphLayout/Internal/Rich d---------
Add paragraphLines to Rich ParagraphLayout.

BREAKING: The paragraphLines field of ParagraphLayout must be preserved
for pagination.

BREAKING: The width of a rich text ParagraphLayout will now remain
unchanged after pagination.

BREAKING: Empty space at the top of the first line and at the bottom
of the last line in a ParagraphLayout will now be preserved.
Use more specific name for the LineHeight typeclass.
Implement calculation of safe paragraph width.
Refactor lineNumbers into a common module.
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.
Fix documentation: link to layoutRich.
Expose piecewise paragraph construction.
Consolidate tree types into one.
Add ancestor boxes to interface.
Implement Rich pagination.
Implement piecewise paragraph construction.
Add basic support for Rich layout.