* Use eslint and stylelint, fix all errors
* Remove jshint, jsbeautify
* Use Object.keys directly since that is available in all major browsers
* Fixes for eslint, stylelint errors
* stylelint is not included in grunt test yet because jquery.uls.mobile.css
has so many !important and need to figure out whether they are really needed
* Sort jshintrc a-z and section it.
* Remove grunt.js from jshintignore (file no longer exists).
* Simplify jshint config by using globstar. The jshintignore
file still applies (to skip jquery.uls.data.js).
* Update jshint config to also validate Gruntfile.js
* Update listed dependency on 'grunt' and 'grunt-cli' to the
versions they currently expand to already. We don't know if
we're compatible with older versions. '^x.y' means, equal or
higher (within the same major release). Similar to '~x.y',
except that tilde tolerates older versions.
* Update grunt-contrib-jshint and grunt-contrib-qunit to their
latest versions.
* Remove obsolete jshintrc parsing hack, use built-in 'jshintrc'
option as of v0.8.0.
* Remove unused 'pgk' property in grunt config.
* Remove unused grunt-contrib-jasmine and grunt-contrib-copy
from devDependencies (unused as of ab9b01444f).