This PR is a great idea!  Thanks for working on this.

How do you feel about making this part a method so the ```begin/rescue``` block it's encapsulated there?  
I'm thinking in something like:

```ruby

...
preferred  = load_console(Bundler.settings[:console])
...


private
def load_console(preferred)
   begin
     require preferred || true
   rescue LoadError
      false
      # Is it in Gemfile?
      Bundler.ui.error "Could not load the #{preferred} console"
      Bundler.ui.info "Falling back on IRB..."

      require 'irb'
      preferred = 'irb'
   end
   preferred
end
```