Restore form attributes after successful upload in io-upload-iframe

Fixes #2533186
Update build files with latest gallery tag.
Add io in src.
IO build.
Update version in package.json.
Adding history updates
Update io HISTORY.
Update gallery tag.
Merge tag 'v3.10.3' into live-docs
Merge branch 'live-docs' into dev-master
Bump version to 3.11.0pre.
Merge branch 'dev-master' of github.com:yui/yui3 into dev-master
Fixed a regression where listeners subscribing to attribute change events
with additional args, would see their args shifted, when the attribute
was `set` with additional options.

e.g.

   foo.after("myAttrChange", function myListener(e, myCustomArg) {
      ...
   }, context, myCustomArgValue);

   foo.set("someAttribute", 20, myCustomOpts);

myListener would see [e, myCustomOpts, myCustomArg] instead of
[e, myCustomArg] in it's arguments list.

See: https://github.com/yui/yui3/issues/846

Testing
-------
Added new tests for the scenario.

*All* library tests pass:
✔ [Total]: Passed: 10988 Failed: 0 Total: 11078 (ignored 90)

Also manually tested the node-menunav examples. These passed functional
tests, even with the older broken code.
add new `color-base` dependency

`dom-style` requires `color-base` as of d2245af
use a variable for the `wait()` timeout
remove delay from automatic purge test

The delay doesn't add much value in addition to what we're trying to test.
remove delay from the insertBefore node
simplify with default timeout
set a generous transaction timeout for browsers that don't fire an event when css fails to load
configure a robust CSS timeout only for load tests