Script streaming: remove byte order marks, detect encoding based on them.

Byte order mark detection needs to be done on the Blink side, since it also
affects encoding detection.

This also enables the preparse data for streamed scripts again, because the
corrupt data was caused by byte order marks not being detected properly.

BUG=430890

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

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