explicitly pass credentials to registry calls

This will be a new major version when published.

Part of the process of removing any implicit dependencies between `npm-registry-client` and npm's own configuration. Instead of using `{get,set}CredentialsByURI`, explicitly pass the credentials in when necessary.

There are two primary drivers for this work:

1. allowing registry URLs with paths (#70)
2. stop retconning auth out of fully-built registry URIs (supplants #77)

Both of these changes will require changes to npm/npm as well.

/cc @iarna for review (still WIP)
*

sometimes called "auth" sometimes "credentials"