Refactor WriteChars() and WriteBytes() into simple wrappers of a common
routine Write().
Simplification and cleanup enabled by last commit.
Trial: Implement DoWrite() as WriteBytes().
Eliminate DoWrite().  It duplicates WriteBytes().
Refactor to eliminate the DoWriteChars() layer.
Do not call updateStringProc directly.  We have TclGetString() for that.
The "channel" Tcl_ObjType is caching only.  It never needs an UpdateString routine.
It's also static to the tclIO.c file.
Simplify macro typecasting.
merge 8.5
Be sure to finalize the identity encoding.
Simplify the core output operations of channels.  Reduce duplicative and
dead code.
Simplify the core output operations of channels. Reduce duplicative and dead code.
Add missing __stdcall (which crashes on win32), and clean-up indenting
remove duplicate declaration
Add missing __stdcall (which crashes on win32), and clean-up indenting
Satisfy required position of __stdcall from VC++
Satisfy required position of __stdcall from VC++
merge trunk