Convert plain layout to a wrapper over rich layout.
Embed TextOptions in ResolvedSpan.
SpanOptions are relegated to the legacy Plain interface, and
TextOptions are now being used internally.
Separate interface-independent layout algorithm.
Separate interface-independent constants.
Add line numbers to laid out fragments.
Fix compatibility with base < 4.15.
Fix documentation: references to local names.
Separate internal plain Paragraph/ParagraphLayout.
Integrate BiDi reordering.
Represent lines with non-empty lists.
We can do this because we removed lines with zero size.
Remove lines with zero size.
These lines would otherwise affect line numbering.
Do not re-export through the Plain module.
Clarify comment about BiDi.
Fix style: white space in lambdas.
Fix style: white space around operators.
Fix style: white space in exports and imports.
Mark some lists as explicitly non-empty.
Separate module for the ParagraphLayout type.