Pluggable hosting

cf https://github.com/mapbox/node-pre-gyp/issues/106

Companion project: https://github.com/albanm/node-pre-gyp-hosting-github

The two together are tested in my fork of your node-addon-example project https://github.com/albanm/node-addon-example

I couldn't test that I didn't break s3 support as I don't have an account. I guess travis-ci will tell me soon enough if I did ok.

I didn't externalize s3 hosting in order not to break compatibility, but if you chose to do so it will be easy.

Of course I am open to all feedback.
Okay, makes sense. Can you share what an alternative `hosting` might look like so I can ponder whether the `host` related params might be moved around so things are more generic? I worry about having `null` params making this brittle.