jshint style tests

This is my proposal for reworking the style tests.  I am now install npm dependencies within cmake because we are relying on specific versions.  The diff for correcting all of the source files will be quite large.  The last commit of this PR fixes several of the core files as an example, but I will probably have to rebase that commit after the changes coming in from #127.  I'm going to recommend holding off on this until we can merge in all changes on the pipe line.
Hmm... markdown is not interpreted when responding by email.  Here it is again properly formatted:

Also, I am always returning `this` instead of `m_this` because (I think)
this will better support chaining through super class methods.  i.e. if `A`
is a superclass of `B`:

```javascript
B.method1 = function () {
  A.method1.call(this);
};

B.method1().method2();
```

If `A.method1` returns `m_this`, then the next call will be to `A.method2`
rather than `B.method2`, which is what I think the user would expect.