fix #6375 (corrupted output while printing to a terminal)

Due to recent changes in libuv, TTY writes are now non-blocking.
Remove redundant zero/one methods for rationals
Introduce `splice_buffer!` abstraction for IOBuffer

Behaves just like `splice!` for arrays, except that it accepts 0-indexed positions and keeps the cursor position stable with the text. Minor behavior change to kill_line -- when killing just a newline, that goes into the buffer.
Merge pull request #6429 from mbauman/cut-iobuffer

Introduce `splice_buffer!` abstraction for IOBuffer in the REPL
Add some missing io's in dump functions
tiny simplifications in LineEdit.jl

remove some "LineEdit." prefixes, formatting, etc.
Fix #6473 (REPL path completion close quote)