remove require of "ffi" on jruby.

a long long time ago "ffi" was automatically required by pry on jruby.
no one has a clear idea why.

it looks like without the require of ffi the tests still pass and pry
still boots:

$ jruby -S bundle exec pry
[1] pry(main)> require "ffi"
=> true
[2] pry(main)> $ Pry
....

$ jruby -v
jruby 1.7.9 (1.9.3p392)
update changelog.md
Remove code made obsolete by Bundler dependency

Since 2cdf739baa1a7c1a0aa86649c1b0ca902f9f4bad started always loading
bundler/setup during tests, we can get rid of some manual load path
setup and dependency checking. We should also explicitly add bundler as
a development dependency.
Merge pull request #1158 from pry/ffi-drop

remove require of "ffi" on jruby.
move development dependencies to Gemfile, & use Bundler.require().
use false literal in place of string
Merge pull request #1159 from pry/bundler

Remove code made obsolete by Bundler dependency
replace 'OpenStruct' with Pry::Config::Behavior in spec/.
rename '@writes' as '@lookup'
alias clear as 'refresh'.
move quiet? to Pry::Config::Default.
lazy load `Pry::InputCompleter` or `Pry::BondCompleter`

prior to commit both would be loaded but in most cases you'd only use
one or the other. when `bond` is available and `_pry_.config.completer`
has not been set to nil before the pry session has started & editline is
not being used(OSX only), then "pry/bond_completer" is loaded. otherwise
the default fallback is Pry::InputCompleter("pry/input_completer")