Improve error reporting in some cases.

Mainly when a node has no siblings/children.
Change top level interface again.

Mainly getting rid of helper functions, the only thing they do is bloating the
API. Also adding a new ParseOne function for parsing just one node out of the
stream. Unfortunately it's not very useful for a network use as it requires
io.RuneScanner as an argument and will do a 1 rune lookahead. The lookahead is
not necessary in some cases like string literals or lists, but otherwise it's
required to actually see that this is the end of the value. Maybe a third
function will be added later, something like ParseOneList to mitigate that
restriction.
Remove unused "line" field from the parser type.
Add comment about ParseOne error reporting.
Add an experimental Helper API.

Should be better suited for parsing regular S-exp based formats.
Add Node and MustNode accessors for Helper.
Handle initial nil nodes better.