Upgrade to Capybara 2. Fixes forms and redirects.

This replaces #37 and #43.

There are quite a lot of changes to bring capybara-mechanize up to capybara 2.  The test suite has had an overhaul to become compatible.

The entire capybara 2 session test passes both in rack-test mode (local) and in mechanize mode (remote) with 2 exceptions.

1. Returning exceptions from the app under test: When we're running against a remote server, we're no longer sending requests directly to the app under test.  We want to return errors we received over the wire.

2. Sending requests to the app under test without a port number: When we're running against a remote server, not specifying the port is the same as hitting port 80.  The test doesn't make any sense in this case.

Note that both of those tests pass in the local case.