Only use Poltergeist to drive features when needed

When writing feature specs, the Rack::Test driver is used by default. If the
Poltergeist driver is required to be used, add the +use_poltergeist: true+
metadata to the spec.

This should improve the performance when running feature specs. It should
decrease the opportunities of Capybara timing out when Travis CI runs specs.

Note: because of this switch, it is required to be more specific about elements
that occur multiple times on a page. For example, this may require using within
blocks.