whoami: Don't crash if we don't have a username

The 'credentials' var will always be truthy, because there's
always *some* registry URI.

See also npm/npmconf#40
npm-registry-client@3.0.1
1.5.0-alpha-2
don't track linters until lint tests are written
use npm-package-arguments when saving
use npm-package-arg instead of split
cache ls and cache clean support scopes
invalid names in optional deps are an early error

It's hard for me to construct a scenario where an optional dependency
with a plainly invalid name failing to install is actually useful to
anyone, so I nerfed the relevant line in the test.
npm-package-arg replacements for split in install
npm-registry-client@3.0.2
a.split('@') → npa(a)
1.5.0-alpha-3
upgrade npmconf and init-package-json

Adds support for 'init.version' config, and falling back to _auth
config as default auth when using default registry.
Remove win from documented loglevels
npmconf@2.0.3
1.5.0-alpha-4
Add note about pre- & post- commands be invoked for custom scripts as well
Display usage for cache without arguments
test: make config-meta test work on Windows
path.basename(pp) => npa(pkgId).name (fixes #5758)