Menu widgets

This adds support for declaring widgets as menu items.