Embed TextOptions in ResolvedSpan. SpanOptions are relegated to the legacy Plain interface, and TextOptions are now being used internally.
Add user data to spans.
Fix style: external vs internal imports.
Fix style: white space in exports and imports.
Fix test warnings.
Move non-public modules into Internal namespace.
Minimise working with Data.Text.Internal.
Use ICU to find line break boundaries.
Store span index in ResolvedSpan.
Implement absolute line heights with half-leadings.
Implement "plain" interface.
Separate tests by module.