Rescue SMTP errors when sending suspension mailers

also, ensuring we retry only on errors where
it makes sense to retry: like timeouts and
server busy errors.

related reading:

http://robots.thoughtbot.com/i-accidentally-the-whole-smtp-exception
http://ruby-doc.org/stdlib-2.0/libdoc/net/smtp/rdoc/Net/SMTP.html#method-c-start-label-Errors
Would be good to change this for other SMTP errors.  Specifically we want to catch when SES rejects sending mail because an address is blacklisted, or the sender isn't permitted etc.

All the SMTP exceptions mix in [`Net::SMTPError`](http://apidock.com/ruby/Net/SMTPError).  I'm not sure if you can rescue based on a mixed in module though...