Refactor robot so initRobot() is implemented as an asynchronous test fixture, rather than using monkey patching code that doesn't work well, having two places calling doh._run() in a race condition.   This design also makes better code separation between vanilla DOH and robot.

I plan to do the same for startRobot() in the next check in.

Also fixes priority of ready() call inside DOH.   The default priority is 1000, so we need to be higher than that, so that DOH doesn't execute until the iframe's dojo.ready() call has finished executing.

Fixes #16386 !strict.

git-svn-id: http://svn.dojotoolkit.org/src/dojo/trunk@30060 560b804f-0ae3-0310-86f3-f6aa0a117693
(cherry picked from commit 6698b8f5f307bd1c8ded908e22b8b91e1b1a6047)
Refactor robot so startRobot() is implemented as an asynchronous test fixture, rather than monkey patching doh.run().  This design makes better code separation between vanilla DOH and robot.

Refs #16386 !strict.

git-svn-id: http://svn.dojotoolkit.org/src/dojo/trunk@30074 560b804f-0ae3-0310-86f3-f6aa0a117693
(cherry picked from commit 28f564e8186eb26efc4f99746ac1d0c7d3038bb0)