Filter bundle related lines from backtraces.

This cleans the backtraces shown for failing examples. Works with both RSpec 2 and RSpec 3 (and should degrade gracefully for RSpec 1).

Before:
    ./spec/controllers/people_controller_spec.rb:18 :in `block (3 levels) in <top (required)>'
    /Users/stefan/Library/Application Support/Avian/Bundles/RSpec.tmbundle/Support/lib/rspec/mate/runner.rb:61 :in `block in run'
    /Users/stefan/Library/Application Support/Avian/Bundles/RSpec.tmbundle/Support/lib/rspec/mate/runner.rb:58 :in `chdir'
    /Users/stefan/Library/Application Support/Avian/Bundles/RSpec.tmbundle/Support/lib/rspec/mate/runner.rb:58 :in `run'
    /Users/stefan/Library/Application Support/Avian/Bundles/RSpec.tmbundle/Support/lib/rspec/mate/runner.rb:18 :in `run_file'
    /tmp/textmate-command-60237.rb:3 :in `<main>'

After:
    ./spec/controllers/people_controller_spec.rb:18 :in `block (3 levels) in <top (required)>'
Improve exception handling in Runner#run

The `ensure`-block relies on `stderr` to be set, so this should be done at the very beginning.

Otherwise, exceptions raised in `rspec3?` trigger an “Undefined method `string' for nil:NilClass” error.
Refactor RSpec version detection

Move detection logic to new method `rspec_version`. Raise error if version can not be detected.

Also change `rspec2?` to not return true for RSpec 3 (as this is a bit misleading unless the method is named something like `rspec2_or_newer?`).
Use rspec binstub if available.

Look for "bin/rspec" and use it, if present. This drastically improves RSpec’s start up time for projects using an application preloader like Spring (as long as the preloader generates a suitable binstub).

Note that the binstub is only used if there is a Gemfile present (otherwise it would not be possible to determine the RSpec version).
 Fix deprecation (and formatter problem) in RSpec 2.14

RSpec 2.14 has both `backtrace_clean_patterns` and `backtrace_exclusion_patterns`. Using the former generates a deprecation message, which somehow also disables the textmate formatter.
Merge pull request #75 from die-antwort/use-binstub-if-present

Use binstub if present
Merge pull request #74 from die-antwort/filter-bundle-backtrace

Filter bundle related lines from backtraces.
Merge pull request #73 from die-antwort/fix-for-rspec3

Fix clickable links for RSpec 3 (again)
Fix spec description.
Fix #run_focussed for RSpec 3.

RSpec 3 dropped support for `--line 12`. Instead `path/to/spec.rb:12` has to be used.

This commit makes RSpec 3 happy while keeping the old behaviour for RSpec 2 and older.
Merge pull request #71 from die-antwort/fix-run-focussed-for-rspec3

Fix run focussed for rspec3
Merge remote-tracking branch 'upstream/master'