better integration of DataViewerWidget and countless minor changes