would prefer -

* assume teh cache dir is empty (it should be)
* safesystem(*gem_fetch)
* scan the cache dir for a gem file (should just see 1)

This helps avoid any whimsy that upstream rubygems does to change the way the 'gem' command outputs things.