Make sure sourcing `nvm.sh` on shells that don't support source options doesn't exit nonzero.

Fixes #721
diff --git a/nvm.sh b/nvm.sh
index d339c67..f0bee69 100755
--- a/nvm.sh
+++ b/nvm.sh
@@ -1784,7 +1784,7 @@
   [ "_$(echo 'echo $1' | . /dev/stdin yes 2> /dev/null)" = "_yes" ]
 }
 
-VERSION="$(nvm_alias default 2>/dev/null)"
+VERSION="$(nvm_alias default 2>/dev/null || echo)"
 if nvm_supports_source_options && [ "_$1" = "_--install" ]; then
   if [ -n "$VERSION" ]; then
     nvm install "$VERSION" >/dev/null
diff --git a/test/sourcing/Sourcing nvm.sh with no default should return 0 b/test/sourcing/Sourcing nvm.sh with no default should return 0
new file mode 100755
index 0000000..91e149a
--- /dev/null
+++ b/test/sourcing/Sourcing nvm.sh with no default should return 0
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+die () { echo $@ ; exit 1; }
+
+touch ../../alias/default
+rm ../../alias/default || die 'removal of default alias failed'
+nvm_alias default && die '"nvm_alias default" did not fail'
+
+set -e # necessary to fail internally with a nonzero code
+
+. ../../nvm.sh || die 'sourcing returned nonzero exit code'