Fixed MimeParser to never attempt another stream.Read() once it returns 0

This didn't seem to cause any problems, but it was non-optimal at the
very least. Depending on the source stream, it is possible that reading
from a stream after it has returned 0 (indicating end-of-stream) from a
previous attempt may throw an exception, which we want to avoid.

FileStream doesn't seem to have this issue, but some other stream might.