npm-registry-client@4.0.0

* Explicitly pass auth into all calls.
* Reworked the npm-registry-client API for consistency.
* Break registry client dependency on npm's cache.
* Remove getAll logic (moved to lib/cache/update-index.js).
* Decouple config from npm / npmconf.
* Remove bugs and upload because they're unused.
nerf better

Fixes npm/npm-registry-client#77, partially addresses
npm/npm-registry-client#70.
add auth and registry URI to mapToRegistry results

Also did some fairly heavy refactoring to simplify it overall.
explicitly pass auth to registry client

Makes a *lot* clearer when the CLI is doing something with auth
implications. Also makes clear that the tests need significant
expansion.
use new npm-registry-client API
style tweaks
directly cache search metadata
handle caching of metadata in npm itself
add npmconf → registry client config adapter
semi-reverted bugs (but now with tests)
ensure nerf dart loses trailing path

also add unit tests!
test mapRegistryToURI