Minor tweaks & bugfixes
basic eldoc
very basic documentation popup
tweaks
Big refactoring, bug fixes, etc.

Split the completion parser into its own class, and use PHP's built-in
tokenizer instead of crappy regexes.

The remaining completion code should ideally be factored out of
EvalWorker into its own class too, but some of it needs access to the
REPL scope. Hmm.
More refactoring into Completer class
Improve elisp, hopefully
Complete "new " without a class name
Special case for completing empty input line