Fix to dom preprocessing that strips ws and comment nodes.

* Added a check to not normalize ws/comment content on a node that
  has no child that is an element node.  In the process, simplified
  some of the other checks.
* In the coming week, we will start moving to DOM-based
  serialization handlers that should eliminate much of this
  preprocessing.
* But for now, this patch ensures that comment nodes are not
  lost during serialization from certain types of nodes.
* Fixes RTing of:
  en:Castle Hill Primary School
  en:List of Carnegie libraries in Colorado
* Doesn't change RTing of:
  en:Mooreville Chalk
* Additional 17 html2html tests passing (bonus).

Change-Id: I14fbd162b7e6f5d92b0307b0a0f91eb99f6908c1