BUG: Fix units when reloading scenes

Restoring the selection node unit references shall not just be done when
closing scene, but also when loading or restoring a scene.
To simplify, it should be done anytime the selection node is modified.
When Clear() is called, singletons are reset, which means they loose their
node references. Which should trigger a ModifiedEvent (see next commit)
that is caught by the unit logic that can restore the unit references.

Fixes #3152

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22222 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: vtkMRMLNode::Reset() should trigger ModifiedEvent if needed

 * Remove the dangerous method
vtkMRMLNode::CopyWithSceneWithoutModifiedEvent():
 ** Modifying a node should never be silent, at least one ModifiedEvent
should be triggered.
 * Copying references should not be silent: ModifiedEvent and
NodeReference*Events should be triggered.

The fix ensures resetting() the selection node triggers at least 1
ModifiedEvent.

Fixes #3152

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