Fixes for IE9+ (and some for IE8)

This PR gets tests passing in IE9+. The only change IE9/10/11 need is the inclusion of the wgxpath shim in the tests.

IE8 still needs attention, but it's not much now. I've replaced chai with assertive-chai in order to work around ES5 incompatibilities with IE8.