use html5lib lxml tree builder and walker

**DNM** Need to fix tests and see if I can profile this more reliably.