Stop the Perl exceptions from being prematurely stringified
Stop the Perl exceptions from being prematurely stringified

In the previous implementation, structured error data was being
discarded at instantiation due to instant stringification in the
constructor; I believe this is how the Python implementation still
works. Changed the behaviour to maintain actual Exception objects
that know how to be stringified by default. This will allow
consumers the ability to catch and recover based on more than the
string itself, as well as giving consumers the ability to write
more comprehensive error messages should they wish to.

pjlsergeant/gherkin,cucumber/gherkin3,cucumber/gherkin3,cucumber/gherkin3,SabotageAndi/gherkin,SabotageAndi/gherkin,pjlsergeant/gherkin,Zearin/gherkin3,pjlsergeant/gherkin,cucumber/gherkin3,Zearin/gherkin3,Zearin/gherkin3,SabotageAndi/gherkin,cucumber/gherkin3,Zearin/gherkin3,cucumber/gherkin3,pjlsergeant/gherkin,cucumber/gherkin3,Zearin/gherkin3,cucumber/gherkin3,pjlsergeant/gherkin,Zearin/gherkin3,SabotageAndi/gherkin,pjlsergeant/gherkin,SabotageAndi/gherkin,Zearin/gherkin3,SabotageAndi/gherkin,Zearin/gherkin3,SabotageAndi/gherkin,pjlsergeant/gherkin,pjlsergeant/gherkin,pjlsergeant/gherkin,SabotageAndi/gherkin,cucumber/gherkin3,SabotageAndi/gherkin