eval+test: implement r5js.ToStringEvaluator#schemeValueToString.
io: move port-related stuff to src/js/io.
io: split port.js into {input,output}_port.js.
runtime+io: introduce r5js.OutputPort#display + impls.
io: correct string escaping for r5js.CallbackBackedPort#display.
eval: r5js.EvaluatorImpl#repl should use r5js.ToStringEvaluator for output.
io+eval+test: split r5js.ToStringEvaluator#schemeValueToString in two.
ast+env+runtime: remove r5js.Datum#stringForOutputMode + impls.
ast+runtime+eval+test: remove r5js.OutputMode enum.