Repl: use usual Printf instead of Format's
Much improved line-based tokenizer

- Support line continuations (~).

- TO now has a special meaning at a toplevel prompt (that is, outside of
  any other TO).  In any other context, it is just a word.

- The final dot (.) is no longer needed.

- TO <name> <inputs> and END have to be by themselves on the line for
  them to be recognized correctly.  Otherwise they are recognized as
  words.
Repl: fix evaluation of lines

This fixes a bug where only the first command of a line would be
evaluted on the toplevel:

  print 3 print 5

would only output '3'.
Remember the raw input used with TO

This is needed to implement 'fulltext'.
Eval: more robust handling of TO definitions

Also, the body of a TO now has to call 'output' to actually generate a
value (the body is now evaluated with 'commandlist' instead of
'instructionlist')
Eval: allow inline docs for user-defined procs

Comment lines at the beginning of a TO-definition will be taken as the
text of the corresponding inline help.
Lexer: fix parsing of inputs after TO
Merge pull request #5 from nojb/better-lexing

Better lexing