Clean up observers on reload

Use the slicer.modules.<module>Widget attribute to access the
widget in the test so that we are always able to operate on
the correct instance of the widget (i.e. either the one that slicer
created at discovery or the one we created on reload).

Also clean up observers on reload and compress update events.