More work on the basewidget, some error catching.