Fix NVM_DIR discovery

I finally found the culprit, we tested for the actual existence of `$NVM_DIR`. But in some shells an empty string would mean the current directory of the sourcing script, so discovery was skipped.

I've altered the test of testing for the existence of the directory to testing of the existence of the variable itself.

Also, extended the directory discovery with `$_`, which when accessed as the first statement in a script contains the current file in some shells like `$BASH_SOURCE` in bash.

This fixes #333, but you'll have to unset `$NVM_DIR` (`unset NVM_DIR`)  or explicitly set `$NVM_DIR` (`NVM_DIR=$(pwd) npm run test/fast`) when running the tests.