Just use onfocusin as a detection test for focusin support

Due to various restrictions on what dojo/on can depend on,
and a desire to resolve this issue so that a release can be issued,
simply check for a matching event key on the has-test element.
This stops focusin/focusout from being used in WebKit and Blink
in lieu of event capturing, which is not ideal, but is not any
worse than what was happening before.

Refs #17599.

(cherry picked from commit 81e1c7d6b52e2f42a3bbc8259f875bd83aaa8541)
(cherry picked from commit df47713a809bb5dfdd9a6dad472b6693c501b866)
Add missing host-node and host-rhino rules to has.js

Fixes #17741.

(cherry picked from commit ce4704766da86485459d9b16514fe7d2e48a6bda)
(cherry picked from commit fd52c9617a7191983427172335f71b2211db383e)
Updating metadata for 1.8.6
Updating source version to 1.8.7-pre
Use has.add for config-useDeferredInstrumentation

This ensures that a default build works the same as an unbuilt
version of Dojo, while still allowing the configuration value
to be fixed during a build.

Fixes #17753.

(cherry picked from commit fdcc15e86445ea8b893ef65d29b860ef12a2abb3)
(cherry picked from commit 5b28811930e9353160fe7f0a9680615e3da98639)
Update dojo/window.scrollIntoView to avoid iOS body scroll reset, fixes #17740

(cherry picked from commit 87a492b78c9738ae0d0e41fe81230b151803e819)
Fix #16296 console.debug(NaN) produces error in IE9

Properly convert arguments to an Array when shimming a console function.

(cherry picked from commit 97861d95302c4e4e08de697dc563f9a0786e1d8d)
Only set idProperty if identifier provided, fixes #17557

(cherry picked from commit 5c86aadf89e576075dfb27898a7897112751edad)
Prevent `baseUrl` global variable creation.

fixes #17798