Add internal functions for "shaped runs" output.
Properly use ICU locale identifiers.
Clarify spanLanguage and add basic ICU conversion.
Make SpanOptions a separate type.
Slightly decompose the Plain module.
Update documentation and derived instances.
Move non-public modules into Internal namespace.
Remove I8/Int distinction.
The distinction was meant to provide additional type safety, but
inconsistency with other used libraries required too many workarounds
for this to be beneficial.
Implement "plain" interface.