fixed encoding issues in js-gherkin

See https://github.com/cucumber/gherkin/issues/225
clean up for submission

- use indentation style of surrounding code
- avoid unnecessary whitespace changes
- more comments
- add names to LICENCE file
fixed indenting + error handling

- Fixed indention in js/test/test.de.js
- throw Errors instead of strings.
extract method for utf8 decoding/encoding

I moved the code for utf8 decoding/encoding to
separate methods, since it is at another level of
abstraction than stringToBytes and bytesToString.
agree on credits living in History.md; small whitespace nitpicks
Merge branch 'master' of https://github.com/ldegen/gherkin into ldegen-master