Added support for NPM

This resolves issue https://github.com/travis-ci/travis-ci/issues/1429.

I have currently left out support for supplying a username and password. This is because there isn't a good way to do it. The following two ways are possible, but don't seem like good ideas:

* Provide input to the `npm adduser` command uing the built-in `Open3` module. To me, this seems like depending too much on the interface of `npm adduser`, which could change.
* Manually create a NPM access token. I haven't been able to find any public documentation for the API, but the proper API method is shown [here](https://github.com/isaacs/npm-registry-client/blob/master/lib/adduser.js#L65). Again, this seems like depending on something that could change, as I don't think is publicly documented, as well as duplicating some of the logic of `npm` which this gem shouldn't focus on.