Fix the gem provider

This is a major refactoring, since the old handling of `ruby_version == '*'`
resulted in all sorts of breakages. The fixes were:

* Explicitly unset the `GEM_HOME` environment variable, because Bundler
  was setting it to the system ruby's gem path in `with_clean_env`
* Run `gem install` for all ruby versions that need it
* Run `gem uninstall` for all ruby versions that need it

cc @wfarr