Fixed bug where -getSnippet in clj.clj received only the step parameter.

cucumber.runtime.UndefinedStepsTracker actually calls the Backend
instances with 2 parameters--Step and FunctionNameGenerator--but
Clojure's Backend implementation only accepts one.

Instead of testing generation of Clojure Snippet with a test-only
ClojureSnippet instance, ClojureSnippetTest now tests the real
implementation in clj.clj.
Improve performance of URLOutputStream. Closes #654.
Remove unused code
Correct error message on XStreams failure due repeated column. fixes #657
more precise detection of the "null to primitive assignment" XStream error.
wrapping unrecognized XStream ConversionException in CucumberException
Merge #658. Update History.md.
Merge #650. Update History.md

Also remove obsolete comment from the Clojure backend.
Android: Extract the main content CucumberInstrumentation

To simplify custom instrumentation classes inheriting from other
instrumentation base classes, basically all content of
CucumberInstrumentation is extracted to the new helper class
CucumberInstrumentationHelper.
Rename CucumberInstrumentationHelper -> CucumberInstrumentationCore
Dominic: expose current (gherkin) scenario to step definition code via ThreadLocal
Dominic: expose scenario name as part of cucumber.api.Scenario
Dominic: add scenario name to test stub
Dominic: fix line number reference in test code
Merge #671. Update History.md.

Also fix file modes and remove a wildcard import.
Merge pull request #667 from brasmusson/android-espresso-support

Android: Prepare for Espresso support
Update History.md for #667.
Make JRuby module build alongside rbenv
Fix compilation on JDK7 on OS X. Closes #499, #487.
Update dependencies