enable JSHint linting for test code, too

* move config from package.json to .jshintrc files, which permits a
  nested configuration for subdirectories with inheritance
* clean up test code according to the JSHint results
* the --verbose flag adds warning codes to JSHint output (useful for
  adding jshint-ignore pragmas where appropriate)
add space before parenthesis for anonymous functions

Add a space before the opening parenthesis for unnamed functions
("function (args) {..."), to make it clearer that this is an anonymous
function. Purely cosmetic change, no other modifications in this commit.
fix "loading" test to work independently

(the Location/loading test was failing when called in isolation)
add npm package "jscs"
add JSCS configuration and include it in npm lint script
fix issues reported by JSCS

(no actual code change; purely stylistic/cosmetic adjustments)
add npm package "jscs-jsdoc"
add jscs-jsdoc config and fix reported issues
give all prototype member functions names

* make all functions of prototype objects named functions (for better
  stack traces, function names during tracing/debugging, the ES6
  Function.name property)
* either name other anonymous functions too, or insert a space before
  the opening round brace for clarity
* activate the JSCS rule that enforces a space before the opening
  round brace for anonymous functions
* no "actual" code change in this commit
Merge pull request #10 from yelworc/jscs

lint test code too, add JSCS code style checking