Moved to grunt linters and added `.editorconfig` linting

As mentioned in #9, we were missing linting for `.editorconfig` enforcement. This PR fixes that and its associated lint errors. In this PR:

- Added `grunt-lintspaces`
- Moved from `jshint` to `grunt-contrib-jshint` to keep lint configs in same location
- Fixed up lint errors in `lintspaces` (e.g. inconsistency between tabs and spaces in files)

There was one point I was unsure about which is trailing commas in objects. I see it done in 2 of 3 places in `Gruntfile`. Since that is inconsistent, I normalized it to not have trailing commas. If you want to add enforcement for that, it can be done via `jscs`.

https://github.com/jscs-dev/node-jscs