Force generators to abort if they fail.

Rails does not seem to provide a clean way to abort something if a
generator fails. Under most circumstances this is probably the proper
solution.

However, for us, these generators calls also function as smoke tests for
our actual generator code. If one of them fails, we need to fail the
build. Thankfully, if the generator had a problem the status is captured
in `$?`. We can verify that the last process was successful and abort
when it is not; thus failing the build and notifying the team.
Fix broken generator.

The generator was failing due to the missing require.
Configure Action Mailer `preview_path` in railtie

This mirrors how Rails sets up the default `preview_path`. Using a
`before_initialize` allows the environments to be loaded but shims in
before Rails sets up its `test/` default.
Remove old implementation of setting the path.
Note ActionMailer preview updates in Changelog.
Fix how Rails 4.1 handles showing previews.
Remove skipped spec.

This is being tested via the rake task which uses the generated example
app. It would be nice to have a lighter weight method of testing the
railties in the main RSpec suite, until then keeping this :skull: spec
around just clutters the code base.
Merge pull request #1236 from rspec/move-preview_path-default

Move preview path default
Handle feature specs without Capybara.

When Capybara has not been loaded the RSpec suite fails with syntax
errors on `feature` and `scenario`. While Capybara is an external gem
dependency, rspec-rails is so tightly coupled with it, necessitating
some basic support for the syntax.

This adds coverage for both the external documentation cukes and the
Rails app smoke specs. To prevent RSpec from raising confusing syntax
errors when Capybara is not available we shim on top of the basic
syntax: `feature` and `scenario`. Without both of these we receive
syntax failures with basic feature specs.

Since RSpec does not support the reset of the Capybara methods / DSL the
specs are skipped by default. A helpful message about using Capybara is
displayed when skipped.

Updates the cuke to match changes from #1231. This uses the `RSpec`
namespace for calling `feature`. It also adds the `:type => :feature`
metadata. rspec-rails needs to hook into feature example groups, this
change ensures that happens by setting the appropriate `:type`.

While Capybara does include the `:type` metadata automatically it may
not always. Most of the Capybara related hooks actually rely on the
metadata: `:capybara_feature => true`.
Fix up documentation spacing for web display.
Observers were removed in Rails 4.0

Observers still exist but are in an external gem:

    https://github.com/rails/rails-observers
Handle Capybara < 2.4.x with zero monkey patching.

Capybara 2.2.x and 2.3.0 do not properly handle RSpec no monkey patching
mode. Unfortunately, proper support in Capybara was only added in
2.4.0. However, rspec-rails claims to support Capybara >= 2.2.0 so we need
inform the user of this mismatch.