Remove use of named functions, refs #15179 !strict.

Linting fixes, refs #14615 !strict.
added loader test; refs #14808
Various fixes and unit test updates. refs #15182 !strict
improved timeout in loader to watch plugin requests; added test to demonstrate this plus other, unresolved issues; refs #14990; !strict 
reversed priority of boot params from defaultConfig, userConfig, dojoSniffConfig; added tests; fixes #14810; !strict
try [28360] again since error in commit missed files; fixes #14810; !strict
Fix spelling of cancel*. refs #15182 !strict
Clean up dojo/request/util. refs #15182 !strict
removed requirment for sync loader when including v1.x i18n backcompat; refs #14092; refs #15057; !strict
Rename `dojo/promise/Promise#both()` to `dojo/promise/Promise#always()`. Refs #14615 !strict
Fixes #15186 one more order of ops correction. thanks, neek
Support dijit/Tree DnD on mobile, and support touch.over, touch.out, touch.enter, and touch.leave synthetic events from dojo/touch module.   Also fixed touch.move to behave like mousemove.

I refactored the touch.over/touch.out code to work by firing synthetic events when it that the user drags over a different node than before.   

About touch.move: Previously, on(node, touch.move, func) on mobile would only trigger func if the user started their drag inside of the specified node.   This did not match the behavior of on(node, touch.move, fun) on desktop, which was to fire events whenever the mouse was moved over the specified node, regardless of where the mouse movement started.   DnD at least was depending on the onmousemove-like behavior.

Refs #14185 !strict.
improved sniff for dojo xhr factory; fixes #14831; refs #14092; !strict
Removing dependency on win.doc global-ish variable:

- Each widget has a document determined at creation time, usually implied by srcNodeRef.ownerDocument but also specifiable explicitly.    Save that in this.ownerDocument, and for convenience also record the associated <body> node in this.ownerDocumentBody.    Maybe this.ownerDocument should be called this.doc instead,  but I thought that might be confusing with Editor.document.

- In widgets, use this.ownerDocument instead of win.doc, and this.ownerDocumentBody  instead of win.body().

- Since domConstruct.create() doesn't take a document parameter, either pass in a refNode (which implies the document), or avoid using domConstruct.create().   Could also have wrapped the domConstruct.create() calls with win.withDoc(), or used domConstruct.toDom().

- Miscellaneous fixes to widgets.

- Make dojo/_base/window::body() take an optional document parameter.

Editor not yet converted.

Refs #15216 !strict.
Use target.ownerDocument rather than document, in case on.emit() is called on a node in a different document,  refs #15216 !strict.
Fixes #12749 - put back code to handle format for 'E' with l<3.  Seems to be a descrepancy between the unicode spec and the Java one.
Add missing (optional) document parameter for various DOM methods, and update code (mainly dijit code) to pass in the document to those methods, fixes #15229 !strict.
Remove some apparently overcautious end-of-loop checking that happened to be referencing win.doc from possibly the wrong document.

Refs #15216 !strict.
for cdn version, prevent overriding userConfig and find correct dojoDir when user-set baseUrl; fixes #15238; !strict
improve order of boolean expression to make meeting attendees happy; refs #15096; !strict