Extract rspec vim bindings to thoughtbot/vim-rspec
Move `.vimrc.local` to the bottom of .vimrc

Having this file be sourced last allows user to
overwrite the configs in `.vimrc` without having to modify it.

* fixed file's path to work with `filereadable`
Increase tmux scrollback lines
Add a config line required by vundle
Use `color.ui = auto` setting to color git output
Use bundler.vim

Includes features such as:

* `:Bundle`, which wraps `bundle`.
* An internalized version of `bundle open`: `:Bopen` (and `:Bsplit`,
  `:Btabedit`, etc.).
* `'path'` and `'tags'` are automatically altered to include all gems
  from your bundle.  (Generate those tags with
  [gem-ctags](https://github.com/tpope/gem-ctags)!)
* Highlight Bundler keywords in `Gemfile`.
* Support for `gf` in `Gemfile.lock`, plus syntax highlighting that
  distinguishes between installed and missing gems.
Remove --noheading flag from ag execution

The flag isn't needed, and seems to cause strange output.

Output with flag in vim:

app/models/group.rb|4| validates :yammer_group_id, :name, presence: true
||·
app/models/event.rb|24| validates :name, presence: ...

---

Output without:

app/models/event.rb|24| validates :name, presence: ...
app/models/event.rb|25| validates :name, length: ...
app/models/event.rb|26| validates :open, inclusion: ...
Always merge with `ff = only`

@jferris:

This has the effect that Git will never implicitly do a merge commit,
including while doing git pull. If I'm unexpectedly out of sync when I
git pull, I get this message:

> fatal: Not possible to fast-forward, aborting.

At that point, I know that I've forgotten to do something in my normal
workflow, and I retrace my steps.

@gylaz:

I like the value of seeing a failure message if a pull (or just merge)
fails due to not being able to get fast-forwarded. Then I can look to
see whose changes went out, that I may have not expected to be there.