Make XHR use background HTML parser

This patch enables background html parser for documents with no frames,
which are XMLHttpRequest response documents. HTML imports and
inspector/DOMPatchSupport will still to use the synchronous mode as the
current code expect the change to happen synchronously.

Before this change, XMLHttpRequest immediately set its state to DONE after
receiving the last data. After this change, XMLHttpRequest will wait for
|Document::finishedParsing| before changing its state to DONE if it has
responseType == "document". This is needed because |DocumentParser::finish()|
do not synchronously give the complete document, but we have to wait until all
tokens from the background parser is processed.

BUG=409461

Review URL: https://codereview.chromium.org/521363002

git-svn-id: svn://svn.chromium.org/blink/trunk@181684 bbb929c8-8fbe-4397-9dbb-9b2b20218538