Lock Suspenders to a Rails version

This is intended to help solve the error people are seeing by having
Rails 4.1.2rc1 on their machine:

    thoughtbot/suspenders/lib/suspenders/actions.rb:7:in
    `replace_in_file': "config.assets.version = '1.0'" not found in
    config/environments/production.rb (RuntimeError) from
    thoughtbot/suspenders/lib/suspenders/app_builder.rb:94:in
    `setup_asset_host' from
    gems/railties-4.1.2.rc1/lib/rails/generators/app_base.rb:133:in
    `build'

I don't think it will totally solve the issue but it is at least more
declarative. To totally solve it, I think we need to fail fast when the
script runs by checking for `rc` in the `gem list railties` output or
something.
Use `>=` instead of `==` for ruby version check in gemspec
Avoid `gem build` warnings via more specific version requirements in gemspec
Preserve locked gem versions for test suite

When we run the suspenders test suite, we want to preserve all of the locked
gem versions which suspenders itself has put in place for it's test run, which
is why the `Bundler.with_clean_env` is removed here.

This will ensure that the `bin/suspenders` run during the test suite actually
uses the versions of gems intended by the Gemfile.lock.

When we run things from within the generated rails app however, we do want to
use Bundler's `with_clean_env`, because we want to discard the test suite's
specific versions of things in favor of the generated app's versions of things.