~jaro/balkon

ref: 07b55a3860ee3d685303213a96c9b7bad0fec7ad balkon/src d---------
Support hard line breaks.
Add internal functions for "shaped runs" output.
Document considerations for beginsText/endsText.
Properly use ICU locale identifiers.
Fix typo in comment.
Clarify spanLanguage and add basic ICU conversion.
Remove (~) operator from ParagraphConstruction.

The tilde operator was causing compilation errors with older versions
of GHC, possibly due to a conflict with the lazy pattern match syntax.

It has been replaced by a pure Haskell alternative that uses function
application.
Refactor line breaking.
Allow breaking at character bounds.
Use a single list of line breaking alternatives.
Clarify meaning of Array in Paragraph.
Implement trimming spaces at end of lines.
Remove redundant overflow handling.

This may be useful later when words are allowed to overflow, but this
code path is currently unused.
Decompose ProtoFragment construction.
Add dropWhileEnd to SeparableTextContainer.
Add trivial instances of text containers.
Fix documentation of ProtoFragment after RTL placement.
Implement correct positioning of RTL runs.
Make SpanOptions a separate type.
Slightly decompose the Plain module.
Next