XML compat / parse5

I took some effort to get parse5 working with jsdom.

I put parse5 as default parser now, however since parse5 doesn't support XML, we need to make note of the parser config to re-enable htmlparser2.

There are currently test failures because I used parse5's document-only parse mode. There is a fragment-only mode, however that'd require us to still do the wrapping stuff. I guess we'll have to go through all the failing tests and check which ones of them actually produce the correct result. The alternative would be to introduce a new config option which enables/disables fragment mode.

Any general comments before I continue? @domenic?
I think we should (as part of the back-compat breakage) make this an external switch, to emulate how browsers use mime-type as the switch. Browsers will treat `<?xml...` as a bogus comment for `text/html` files, and we should too.