Don't require annotations on definitions.
Allow arbitrary terms as definition bodies.
Always show stack before prompt.
Show stack on multiple lines.
Handle strings with mismatched brackets.

A string like ":(" was interpreted as containing an opening
parenthesis token, so the REPL would erroneously go into
multi-line input mode.
Preserve newlines in multi-line input.