Incrementally parses values from a string.
st must contain valid GameLisp source text. The function parses zero or one values from
the start of the string, returning a three-element array, (tag val chars-read).
tagis a symbol: eitherokorend-of-input.valis the parsed value, or#n.chars-readis an integer, the number of characters consumed from the beginning ofst.
filename can be used to specify a nominal filename for error-reporting. It does not
need to refer to an actual file.
It's usually more convenient to call parse-all or parse-1,
rather than using this function.