~jaro/balkon

ref: 7f0ce005ca7c6f7c92be37cc5e6526c1b3a32e54 balkon/src/Data/Text/ParagraphLayout/Internal d---------
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.
Update documentation and derived instances.
Expose ParagraphConstruction.
Hide Rect union from public interface.

The function behaves in a specific way that should not be relied on by
other modules.
Use internal library to hide non-public modules.
Move non-public modules into Internal namespace.