Fix module subdirectory resolution

Includes test case

Node.js' test cases aren't comprehensive enough.
Add half-written full recursive Node provider
Add missing test files

Suppress over-eager gitignore
Allow spaces in require() calls
Finish recursive module parsing

Includes passing unit tests.
Substantially improve string completion launching

The caret will now jump to the end of the function call if applicable.
Pressing / will re-open completions (for nested require() paths).
Typing a closing quote will commit completion.
Quotes and slashes  will not duplicate on commit & keypress.
Ctrl+Backspace & Delete will trigger completion.
Reduce nesting
Fix EOD crash
Merge pull request #102 from SLaks/node-recursive-completion

Full Node.js require() IntelliSense