preserves top-to-btm order of comments, but slow
previous sibling detector now exists
getPrevTextNodes now exists
better top-to-bottom working
preserves top-to-btm order efficiently