BUG: Added missing node references update to scene->AddNode methods

Fixes http://na-mic.org/Mantis/view.php?id=3539.

Problem was that node references were not updated in the scene when
node->SetScene(scene) was called for the node before scene->AddNode(node).

From: Andras Lasso <lasso@queensu.ca>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22788 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Improve readability of vtkMRMLScene::AddReferencedNodeID method

This commit does not introduced any functional change, it just makes
the code cleaner.

From: Andras Lasso <lasso@queensu.ca>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22789 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Update doxygen comment of vtkMRMLScene::AddReferencedNodeID

The comment document the changes introduced by commit r22669

From: Andras Lasso <lasso@queensu.ca>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22790 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Fix module history to keep most recent selected module last

The current implementation is a dysfunctional mix between
a "module history navigator" and "fixed workflow navigator".

This commit implements "module history navigator" behavior,
which is useful for generic Slicer use.

A "fixed workflow navigator" is a very special case, it is only
applicable when all the modules are part of the workflow,
there are no loops, skipping of steps, auxiliary modules, etc.

Considering the following convention, the update is illustrated
below.

Legend:

  -> X : Go to module X
  P    : List of module in the "previous stack"
  N    : List of module in the "next stack"

Current behaviour:

   A     P: -    |  N: -
-> B     P: A    |  N: -
-> C     P: BA   |  N: -
-> D     P: CBA  |  N: -
-> A     P: -    |  N: BCD
-> E     P: A    |  N: -

After integrating this commit, the behaviour is then:

   A     P: -    |  N: -
-> B     P: A    |  N: -
-> C     P: BA   |  N: -
-> D     P: CBA  |  N: -
-> A     P: DCB  |  N: -
-> E     P: ADCB |  N: -

where

A: Welcome module
B: Annotations
C: Data
D: DataStore
E: SampleData

Fixes #3533

From: Andras Lasso <lasso@queensu.ca>

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