Handle interleaved steps and results in the java PrettyFormatter

The java PrettyFormatter has relied on that the call to step() for all
steps in a scenario, come before any call to match() for any step in
the scenario. In Cucumber-JVM version 1.1.3 the call sequence was
changed so this assumption is not true anymore.

To handle interleaved calls to step(), match() and result(), the java
PrettyFormatter is changed to also store the received match and result
data in a list until the end of the scenario. Then the indentations for
the step definition locations are calculated, and the whole scenario is
printed at once.

The final formatted result is not changed, but for long running
scenarios the delay of printing until the end of the scenario will be
notable. Since the printing is deleyed until the end of the scenario,
the printing of the current step as executing is also removed.
Relax the Pretty Formatter spec, executing output not needed

Update the rspec spec for the pretty formatter to explicitly mark the
end of the scenarios with a call to Formatter.eof(). Relax the spec to
allow for but not require the "executing" output for the currently
executing step. The java Pretty Formatter is not printing those, since
it needs to wait to the end of the scenario to be able to calculate the
indentation for the step definition locations for the scenario.
Adding in Sanskrit/Shudh-Hindi words for 'hi' language.
Paste of परन्तु didn't work properly the last time.
fix for dissapearing examples tags
Added support for Panjabi/Punjabi language (Gurmukhi Script) in Gherkin specs
Made changes to pull request omitting name of the script that may have caused the CI test fail
Adding entry for Panjabi language in gherkin spec file, which causes CI failure
Added pa to IsoCodes in I18nTest, which was failing CI for jRuby.Added a tab in i18n_spec.rb for formatting
Reverting adding tab, as earlier passing tests except jruby now failed
Merge gherkin:master into brasmusson:java-pretty-formatter
Update i18n.json change Malay translation using suitable words
Add prebuilt ragel for OS X to simplify build. Bump dependencies.
Update i18n.json change Malay translation using suitable words
Add tests for embedding text in JSON reports with the java lib

Add tests to expose that the java JSONFormatter does not handle calls
to write() correctly. The formatter expects them after the result()
call, but if a step definition uses write() calls to embed text in the
report, they will occur after the match() call but before the result()
call.
Fix the java JSONFormatter to handle calls to write() correctly

Fix the java JSONFormatter so that it can handle calls to write() after
the call to match() but before the call to result().
Various tweaks
Properly set rbenv version
Say goodbye to 1.8.7
Add NuGet.exe to git