Try using a TransportListener to listen for delivery errors.

This is somewhat temporary code to try something out...
In our production environment there are mails getting lost.
I'd like to find out why.
Try using a TransportListener. This is more complicated.
Also the listener may be getting added many times. We shall see.
Commenting, cleanup, close our Transport.

This works, I'm shipping it and hopefully I'll get some answers.
Protect from stupid null usage by javax.mail.

If you add no addresses to a message, getting the recipient array
returns null rather than an empty array. So fucking dumb.