This way, widgets containing other widgets can be heterogenous. Wenever a widget is expeted, *any* widget will work.
The latest toss commit includes a width function that runs directly on a &Styled. This avoids using &styled.text(), which unnecessarily allocates a new string. Probably premature optimization, but nicer to use nontheless.