Thanks for this.  Some suggestions:

Use only methods on MetricFu::Environment (`include Environment`)

If the method you need isn't there, add it. e.g. ruby_version ruby_platform ruby_engine.  See [redcard](https://github.com/brixen/redcard/blob/master/lib/redcard.rb)

```ruby
RedCard.engine => 'ruby'
RedCard.engine_version => '1.9.3'
RbConfig::CONFIG['host_os'] => ''darwin'
RbConfig::CONFIG['host_cpu'] => 'x86_64'
RedCard::CONFIG['build'] => 'java1.6'
RbConfig::CONFIG['build'] => "x86_64-darwin12.4.0" 
RbConfig::CONFIG['prefix'] => "/Users/bfleischer/.rvm/rubies/jruby-1.7.4"
RbConfig::CONFIG['prefix'] => "/Users/bfleischer/.rvm/rubies/ruby-1.9.3-p448"
$VERBOSE => [false, nil, true]
Gem::VERSION
# to consider
Encoding.default_external.to_s => 'UTF-8'
Encoding.default_internal.to_s => ''
RUBY_DESCRIPTION => '=> "jruby 1.7.4 (1.9.3p392) 2013-05-16 2390d3b on Java HotSpot(TM) 64-Bit Server VM 1.6.0_51-b11-456-11M4508 [darwin-x86_64]"
RUBY_PATCHLEVEL => '392'
RUBY_VERSION => '1.9.3'
$LOADED_FEATURES
$LOAD_PATH
```

MetricFu version is fine, of course, as is.

I'm curious why you're collecting the immediate dependencies.  That's what's effectively specified by the gemspec.