~jaro/balkon

ref: 1fe9721d7be50e19e68cd8a8ec85f0adbb1c68e4 balkon/src/Data/Text/ParagraphLayout/Internal d---------
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.