Merge pull request #2640 from joyicecloud/bundle-outdate-non-zero

Add rspec test when run bundle outdated with invalid gem name
use Eric's magic DNS servers
Stop threads before killing the worker

It is pretty good idea to kill the threads before killing the worker
because threads are still trying to read from pipe that could be prematurely
closed when workers get killed.
correct comment explanation

[ci skip]
Merge pull request #2645 from bundler/fix-worker-cleanup-error

Stop threads before killing the worker
extract into Bundler.ruby_version
add Bundler::RubyVersion#host
include the unknown engine's name
add user agent to fetcher requests
also include host data in the user agent
on JRuby, RbConfig::CONFIG["host"] doesn't exist
default requests have "Ruby" in the user-agent
init the connection once
set user agent without "Ruby, "
random id to correlate requests in one run
Store git in method
Add the command to user agent for fetcher requests