Implement change of http-clients for tarballs

The first commit implements changeable http-clients and adds a test which is using the strongloop strong-caching-http-client

With the second commit I migrated the old tests to use npm-registry-mock, which removes some boilerplate and repetition