fails:IO#ungetc pushes back one character onto stream
fails:IO#ungetc pushes back one character when invoked at the end of the stream
fails:IO#ungetc pushes back one character when invoked at the start of the stream
fails:IO#ungetc pushes back one character when invoked on empty stream
fails:IO#ungetc adjusts the stream position
fails:IO#ungetc makes subsequent unbuffered operations to raise IOError
fails:IO#ungetc raises IOError on closed stream
