Fix minor typos in comments.

[ci skip]
Add ESLint support.

Config is heavily based on Bootlint's ESLint configuration.
ESLint fixes.
Stricter ESLint rules.

Enable `no-mixed-requires`, `no-lonely-if`, `key-spacing` and `no-multi-spaces`.
Remove a now unneeded JSHint option.
Update Gruntfile.js.

Remove unused target and add a new `lint` one.