Fixed handling of OperationCanceledException in SmtpClient.Send()

Since the cancel token may also cancel reading of a response from
the server, it is impossible to be sure that we can recover by
simply sending an RSET command. Instead, let's simply drop the
connection - not only does it make it more reliable, but also
results in more predictable behavior from the developer's
perspective.