Add page metadata to DOM <head> (bug 45206, part 2).

Change-Id: Ie6de8d6ece925c752c1d3a7d9b6f4e3d4b67a09e
Fixes to DOMDiff and Selser code to better handle modified content.

* Used node.data loading to eliminate repeated parses of
  data-parsoid-diff attribute.

* Improved dom-diff marking to distinguish between a modified
  wrapper vs. a modified subtree.

  Ex: modification of attributes of a node vs. modification of
  the wrapper itself.

* So, dom-diff has two kinds of markers: markers that apply to
  just the node vs. markers that apply to the entire subtree rooted
  at a node.  'modified' and 'inserted' markers belong to the
  second category -- this kind eliminates the need to litter all
  nodes of a sub-tree with the same diff marker.  If a node is
  marked modified/inserted, WTS-selser treats the the entire
  sub-tree as modified.

  TODO: Possibly redo the marker naming scheme to better
  reflect this difference.

* Since 'modified' and 'inserted' markers are now handled more
  accurately both by dom-diff and the serializer, 7 more selser
  tests are now passing.

Change-Id: I9895f079d607abcebee0ccee710f9a350411935e
Merge "Add page metadata to DOM <head> (bug 45206, part 2)."
Merge "Fixes to DOMDiff and Selser code to better handle modified content."