ENH: update the slicer.modules.<module>Widget attribute on reload

This way the attribute can be used consistently to access the gui
of the scripted module before or after it has been reloaded.

Also add an optional cleanup method, which module guis can use, for
example, to remove any observers to vtk objects or clean up other
references.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22099 3bd1e089-480b-0410-8dfb-8563597acbee