As a proof of concept, I started to build a `mwparserfromhell`-like interface to the Parsoid DOM.
You can see it at https://gerrit.wikimedia.org/r/226734
I started by translating the template examples from the mwparserfromhell documentation, which means I'm really jumping in at the deep end. Most non-template manipulations should be much easier! --scott