Lint: Tighten .jshintrc options and enforce them.
Re-ordered .jshintrc to be alphabetical once again (like on
jshint.com/docs/) and by section (predef, restriction,
toleration, environment, legacy).
Enforce eqeqeq:true, and hard-code camelcase:false since we
have a few underscore ones.
"delete x" problem:
* "delete x" never passes jshint, we should use window.x instead.
* "delete window.x" doesn't work in IE6-8 (throws exception)
* "delete x" only works for "x = 1", not for "window.x".
* Only solution I see: use IE @cc comments for the IE version
of the test.
* See also http://jsfiddle.net/8X6cS/6/
IE6: supportDeleteProperty = false, jscriptVersion = 5.6
IE7: supportDeleteProperty = false, jscriptVersion = 5.7
IE8: supportDeleteProperty = false, jscriptVersion = 5.8
IE9: supportDeleteProperty = true, jscriptVersion = 9
IE10: supportDeleteProperty = true, jscriptVersion = 10
Follows-up
dbd005333d23dc1b248a3b6d17f32ab2b2396c66