Implement node moving functions.

The operations itself are O(1) since they just rearrange pointers.
However, the validation step is O(logN) due to a sanity check to prevent recursive trees.

git-svn-id: https://pugixml.googlecode.com/svn/trunk@1002 99668b35-9821-0410-8761-19e4c4f06640
tests: Add tests for node movement

git-svn-id: https://pugixml.googlecode.com/svn/trunk@1003 99668b35-9821-0410-8761-19e4c4f06640
docs: Add documentation for moving functions

git-svn-id: https://pugixml.googlecode.com/svn/trunk@1004 99668b35-9821-0410-8761-19e4c4f06640