Update to Capybara 2.4

Of course, just as we merged 2.3 support, Capybara 2.4 was released!

The entire suite is green with the exception of the new modal API. The biggest change is https://github.com/jnicklas/capybara/pull/1322. However, I've taken a first pass at implementing the required changes and it doesn't look too bad.
@jferris, I looked into making `FindModal` synchronous this evening but ran into an issue when the timeout is reached. The exception raised by `Timeout::timeout` results in a `Reset` being sent before `FindModal` has finished. Our `Connection` will start a command so long as the page is not loading -- which is desired in the case of `Reset`. However, this makes it possible for two commands to emit finished (and other signals), which results in undesired behavior.

I looked into stopping all pending commands when `Recet` is received, which fixes the issue. However, I'm not thrilled with what I came up with, and it's a bit of a rework that I'm not sure we should bundle in with Capybara 2.4 compatibility. However, I've definitely seen issues with simultaneous command processing in the past and it'd be a nice fix to have.

I'm happy to spend more time on this if you think it's worth getting synchronous `FindCommand` for this release, but if you're OK with polling for the interim I think that may be a safer bet while we come up with a polished solution.