Beginnings of a composable Widgets API