Implement adoptNode() and importNode().

importNode() shares all of its implementation with Node.clone();
the only areas they differ are the ones we don't support. The
shared code is in 2 new methods, shallowCopy() and cloneOrImportNode(),
both based on the old clone() method.

Also removing some unnecessary "throws DOMException" clauses.

The tests for the new methods are slightly cumbersome. Most move/copy
nodes to another document, serialize that, and compare.

Change-Id: Id9fb076e020d8327a8f70da401af9bd95d7a3d1b
5 files changed