Run tests against different Rails versions

This introduces the use of [Appraisal](http://robots.thoughtbot.com/appraisal-find-out-what-your-gems-are-worth) to test against Rails 3.1, 3.2, and 4.

It fixes a number of issues I had when running tests against those versions.

I just discovered #34 and realized I'd effectively dropped support for Ruby 1.8 :grimacing:  I guess this just got on the top of my TODO list.

To run against those Rails versions locally:

1. `rake appraisal:install`
2. `rake appraisal spec`

I'd love to see this merged, but I'm still eager to get feedback on it.

Also note that this will run **all** specs (even the ones not specific to Rails) against different Rails versions. I figured that the value of having specs run against Rails versions that have been released *after* 2009 outweighs the harm of needlessly re-running other specs.