Don't search for spring outside the bundle path

People might want to use spring on an application without adding it to
the gemfile. But if they are doing this, it's unlikely they're using
spring binstubs. So it's ok to just search the bundle path when using
binstubs.
Make binstubs less intrusive

* Made bin/spring as minimal as possible
* Use the contents of e.g. bin/rails when executing the "rails" command,
  so if the user modifies this file from the default, their
  modifications will be reflected when running bin/rails with spring.
Don't clobber existing bin files when 'springifying' them

So if a user has made modifications, their modifications will be
preserved.
Wrapped command can be nil.

In the very simplest of cases, it's sufficient to just do:

    Spring.register_command "foo"

Without having to define a Spring::Commands::Foo class.
Add some code to upgrade the "old style" binstubs to the new style
Add a way to remove spring from binstubs