Fix for node editor lib_link and memfile restore (undo): The snode->nodetree/first tree path pointer was not properly mapped on file load due to the fact that it's stored locally in other ID data blocks. Undo was restoring the pointer correctly, but used an ugly hack. Now the SpaceNode->id pointer is linked first, then the datablock is checked for an internal node tree, which is then used instead of trying to lib-link the node tree pointer.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56114 954f8c5b-7b00-dc11-b283-0030488c597c