Optimise the do { ... } while read loop a little

In main() we were reading in the email

    while (bytes_read > 0)

we can do a micro-optimisation here by reading

    while (bytes_read == BUF_SIZE)

Doing it this way means we can generally avoid an extra read of 0. The
only time we don't, is if the thing we are reading, is a multiple of
BUF_SIZE.

Signed-off-by: Andrew Clayton <andrew@pccl.info>