Asynchronously evaluates a command in the REPL and returns the result.
Get any pending output.
Log something to the terminal.
Normally, REPL does the logging. This is called when an external entity needs to
Shuts down the REPL.
Future that is completed when the REPL starts.
Unique identifier for the REPL's type.