Utils, Basic: Add arrayIntersect() method.

Finds intersection of two arrays.
Env: When testing for return_response_type, assume that empty string, text and document types are supported everywhere.

This is required to use html5 runtime, mainly for sake of native
XMLHttpRequest, even in places for XHR L2 is not supported.
Runtime: Add capability - select_file.

This is required to properly reject html5 runtime, when it is not
usable, because now that the implicit check for the minimal requirement
(window.File) is removed, it is the only way to tell where it should be
used and where - not.
XHR, HTML5: Take into account the fact that runtime can be in fact using XHR L1.
XHR: Request specific capabilities (do_cors, send_multipart), where required.
Tests, Runtime: Remove test for can() method.

Wrong way to test it anyway.
Tests, XHR: Adapt to updated html5 runtime.
Runtime: Revise the check for mode dependent capabilities - once more.

Let the checks t return actual mode identifier and not just boolean
value, ehich was confusing and erroneous.
Tests, FormData: Fix.
I18n: Fix sprintf() method.