To maintain backwards compatibility (and because I think it's an OK design choice), keep the widget concept (a single module can produce multiple widgets).