Enable more linters, address the issues and do a major naming refactor
to use golang lower camelCase identifiers for types, functions, methods
and variable names.
Also:
* Clean up inline generation so it doesn't rely on temporary variables.
* Remove unused functions generated by inline.pl.
Adds basic non ascii support including substring, substr, slice functions,
which work with runes (prevent utf-8 length).
This includes adding runes compatible functions:
* indexOf
* lastIndexOf