Implement npm.version

Feel free to change it before you merge. 

Thoughts: in `cache.js` one request is done for checking the cache and then downloading the tarball afterwards. My implementation does not check for a cached tarball. That means if we do not have a cache-check inside `npm.version` we'll have to do 2 requests, which would be bad.

I am not sure if checking the cache is part of this implementation, but I think it is not.