ruby client session: add reset API

There are zero or more mail transactions (It is SMTP term. See RFC
5321 3.3. Mail Transactions.) in a SMTP session. Most milters have
mail transaction level instance variables. If those instance variables
aren't cleared before a new mail transaction, data for the previous
mail transaction may be used. It is not expected.

There are some mail transaction finish timings:

  * "abort" event is emitted
  * Sending "accept" response
  * Sending "reject" response
  * Sending "temporary-failure" response
  * Sending "discard" response

If all milters handle those timings by itself, many bugs are
occurred. So we provide a "reset" callback that is called on all of
those timings.