Tests: IE9 fixes
IE compatibility: setValue on input and textarea to convert null to ""
Tests: attempt to resolve Safari 5 event issues
Tests: IE6 markup comparison should be case-insensitive
IE compatibility: class attribute can be "", and "".split(" ") == [""] which means we end up with an unexpected element in the array