Make the node.parent property editable in RNA, so frame hierarchy can be changed by scripts without resorting to operator hacks.

Performs sanity checks internally to make sure that
a) Only frames are used as parents. In future other nodes may be used for parenting, that will require more sophisticated poll functions.
b) Avoid infinite recursion. If the supposed parent is already attached to a frame node the parent assignment will be ignored.

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