add jruby_18 and jruby_19 to platforms
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
adding platform support for ruby 2.1

* added new platform and ruby version helpers
* updated man file and tests
Merge pull request #2647 from brandonblack/ruby-2.1-support

Adding platform support for Ruby 2.1
Merge pull request #2611 from mcfiredrill/jruby18and19

add jruby_18 and jruby_19 to platforms
don't use global definition in standalone gen

bundler was using the global 'Bundler.definition' for
standalone, but the local definition elsewhere. This was
getting in the way of using bundler from within an application
to generate a standalone bundle if bundler was being used
to bootstrap the application in the first place.
Merge pull request #2651 from cowboyd/use-instance-definition-in-installer

don't use global definition in standalone gen
Retry fetch specs with `--retry`

This PR adds a general purpose Retry class that can be re-used where-ever retry code is needed!

It also allows you to call `bundle install --retry 3` which will attempt to connect to ruby gems 3 times before failing, and emit a warning message each time
Retry git commands
Merge pull request #2601 from schneems/schneems/retry

Retry fetch specs with `--retry`
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