Handle widgets with multiple capital letters

This change allows widgets to have names like `AwesomeWidgetYes` and it will be given `awesome-widget-yes` instead of `awesome-widget_yes`

This seems like a bug, although it might be a breaking change for users already using widgets with multiple names.