Changed for code review feedbacks

1.Readablity improvements, including method renames. Most is to give
more distinct names for readablity.
2. Use StringWriter rather than byte stream to avoid double charset
conversion.
3. Added code comments into ResultReader.cs to document class
relationships and code flow.