xmllint: Rework parsing Merge a few code paths, making options like --valid or --htmlout work with some other options. Improve error handling.