*: Use function that saves parsed strings in a number of places
parser: Remove file name from CommandPosition, add it to ParserResult
translator/lua: Save original strings
*: Dump position information for error reporting

TODO? Check whether using strings is really faster then using table  literals.

Though there is another consideration: strings are for sure more compact and
translation result is already bloated enough to make it even more bloated by
using table literals.
parser: Rename parse_(one|mult|exprs?)

Renamings:

Old           | New
------------- | ----------------------
parse_one     | parse_one_expression
parse_mult    | parse_many_expressions
do_parse_expr | do_parse_expr_cmd
parse_expr    | parse_expr_cmd
parse_exprs   | parse_expr_seq_cmd