fix safari build issue
fix typo
Merge pull request #207 from michaeljb/fix-safari

Fix Safari build issue
set up 'grunt jslint' and 'grunt watch:jslint' to lint files in
src/ext/, move all jslint directives out of files and into grunt
configuration
Merge pull request #208 from michaeljb/jslint

JSLint with Grunt
remove commented code, run JSLint against src/config/**/*.js.erb
Merge pull request #210 from michaeljb/jslint

Remove commented code, run JSLint against src/config/**/*.js.erb
Merge branch 'emergencyfix-gs-server-dependencies' into beta

Conflicts:
	src/ext/lobby_ratings.js
Merge branch 'beta' of http://github.com/aiannacc/Goko-Salvager into beta
Merge branch 'master' into beta to update with changes in #213

Conflicts:
	src/ext/lobby_ratings.js
replace GS.isoLevelCache lookups with a utility function to ensure the iso level cache is present, and provide a default value when it is not
fix broken safari instructions link
Merge pull request #222 from michaeljb/update-link

Update link for "how to build a Safari extension"
remove unused jscs stuff from Gruntfile
turn on jslint's whitespace enforcement
grunt task to run qunit tests
grunt tasks to automatically rebuild firefox and safari extensions, and
reassemble chrome extension

- firefox needs to have the new .xpi dropped in, so 'rake firefox:build'
is used
- safari either needs to have the .safariextz dropped in, or drop in the
.safariextension/ directory and then install it, which effectively
creates the .safariextz, so 'rake safari:build' saves a step
- chrome can use the directory as an "unpacked extension", and the build
task tries to sign the extension which is unnecessary for development,
so 'rake chrome:assemble' is used
grunt task to automatically rebuild/reassemble for all the browsers
Merge branch 'beta' of http://github.com/aiannacc/Goko-Salvager into beta
Merge remote-tracking branch 'michaeljb/util-level-cache' into beta