~jaro/balkon

ref: 3f953d1a770ba18cdea4bd6e7209969bae6c6819 balkon/lib/Data/Text/ParagraphLayout d---------
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.
Make SpanOptions a separate type.
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.