browser compatibility

It's as fast as before and should now work in more browsers.

The test suite doesn't load in IE9, saying `Object expected`. Dunno where that's from.