~jaro/balkon

ref: 6e42cae4509b0d6d9f24bd2887b816ff6e2c5188 balkon/src/Data/Text/ParagraphLayout d---------
Calculate fragment position continuously.

This merges the various "arrange" functions into the layout functions,
which will be used to detect overflows for line breaking.
Implement absolute line heights with half-leadings.
Calculate "normal" line height and pen position.
Use CSS-compatible line height settings.
Upgrade Fragment to contain pen position.
Use CSS3 terminology for fragments and containing block.
Avoid reimplementing Data.Text.Lazy.fromStrict.
Implement "plain" interface.
Use Rect in "plain" interface.
Create "plain" interface.
Add module for working with rectangle coordinates.
Separate modules.