Updates, fixex, and optimizations.

Add _ prefix to private and protected fields.
Fix and optimize PopulateReadBuffer().
Make sure never to pass a direct read or write operation to the inner stream larger than BufferSize, to avoid problems with socket buffers.
Remove try/catch around Encoding calls.
Many bug fixes and optimizations.