Unsafe IO optimizations: Override writeChar and readChar methods to use unsafe

writeChar now performs about 125% faster, and readChar 10% faster than overriden safe versions (in custom microbenchmarks, actual gain may be different, but some gain anyway mainly in writeChar).