Abstracted WidgetSupplier from more specific suppliers