Add method method hasFailed() on test util.

This allows checking whether any of the tests run so far have failed.
Set non-zero exit code on test failure.

This facilitates programmatically checking if a test run failed. This is
handy for automation, bisecting, etc.
[node plugin] Don't crash when no projectDir option is specified

Closes #376
querySelection() returns an Element, not a Node

http://dom.spec.whatwg.org/#parentnode
always enable caseInsensitive in Emacs
Add a .jshintrc file
Adjust .jshintrc, try to get code to lint, give up

It complains about a number of things that are entirely valid,
or not even the case (see 'return after return' warning for lib/def.js).

It did catch a bug though, so there's an upside. Doesn't seem to be
configurable enough yet to suppress the bogus warnings, so I don't see
routine use working out yet.
First pass at fixing TypeScript definition parser.

Fixed issue whereby multiple `declare module` statements are
successively overwritten due to missing branch in `addToObject`. Dumb
fix for `GenericType` issue.
Add a typeAt pass so plugins can help find types.

This enables plugins to provide additional type information at a given
position in a file. This is particularly useful in locations that are
not actually Javascript expressions (like comments) but also in
locations like string literals where the string might actually serve as
a reference to another type.

Using this pass in definition, doc, and type requests means plugins can
provide information for each of those requests. In particular, it
provides a solution to #370 (hooks for definition requests).