The JSONFormatter should record before hooks in the next scenario

For all but the before hooks executed before the first scenario, the
JSONFormatter records them for the latest started scenario, instead of
the scenario be to executed next. The before hook data is shifted up
one scenario, so generally the first scenario will record two hook
executions for each before hook, and the last scenario none.
World function implemented properly
added idea generated directories to .gitignore
bumped missed versions to 1.1.6-SNAPSHOT
bumped gherkin version to 2.12.2-SNAPSHOT
added stub implementation for new formatter methods
Merge branch 'master' of https://github.com/cucumber/cucumber-jvm
World can now receive both a build and dispose function
* fixed several bugs in the AndroidTestReporter formerly known as AndroidReporter
* restructured project to be more maven compliant
* added dependencies for testing purposes
Report summaries and  in the same way as the CLI
Add default value to env
Fix for DataTable as parameter in Jython steps

If the argument is a DataTable it is converted to the raw form (List<List<String>) then converted to PyArray so you can pass it as a PyObject
Fix exception in snippet generator

This fixes a StringIndexOutOfBoundsException that would occur in
CamelCaseFunctionNameSanitizer for function names with multiple spaces,
that is for step definitions with more than one capture group.
Improve CamelCaseFunctionNameSanitizer

Function names are now correctly formatted if they contain acronyms. The
name sanitizer also will not change the case of words that are already
pascal or camel case in the input.
Rename uri to featurePath, which is more explicit
DataTable parameter fix
Added DataTable scenario
Added DataTable step definition
Bump version of android module.
Updated information regarding Android ant build.