Add support for per-widget settings (#37)