Changes for IE8 support

This addresses *most* of the differences with IE8 that enables support, with one glaring exception.

`getComputedStyle` always returns measurements in `px`, but IE8 doesn't support that. The closest thing they have is `element.currentStyle`, but it returns measurements as originally declared in the stylesheet only. (that kind of change is probably something that needs to go on it's own, given the extra testing necessary)

That being said, this is still good to merge as it takes care of the low-hanging fruit for IE8 support, and will be enough for my at least for the time-being.