- factor installation into a separate method
- gem() returns true and false if loaded successfully, only
  indicates failure to load if it raises a Gem::LoadError
- only download gems that are actually missing locally.
- use rsync instead of cpio
- clarify why we're doing a regexp match on the exception message
- upgrade to cabin 0.6.0
- only install if it's "Could not find"
- abort on any other error
TODO
- fix a bug in the File::expand_path monkeypatch I mistakenly thought
  was a JRuby bug - http://jira.codehaus.org/browse/JRUBY-7103