Problem: When using `install --save`, npm prefixed the installed package version with the tilde range descriptor. This makes sense for packages that follow semver and have reached 1.0.0. But for packages < 1.0.0 semver allows APIs to change freely, so those should be packaged with the exact version that was installed, as implemented by this patch.
Mad props to @JasonSmith, @janl, @mikeal, and @maxogden for chipping in with various CouchDB skillz and insights. This is really awesome.
1. Even if the data is stale, use it, and then fetch the update. 2. Tell couch to do the same.
Bump version because 1.0.16 was a DOA release. Whoops.
git submodules make me insane with their repetitive repetition
This makes it possible to 'fix' the dependencies of dependencies, by specifying a precise version that the dependency can depend upon.