Making Mailer ready for 3.2 and adding preflight hook

Making some changes that were documented for 3.2 and added a preflight hook for HTML emails.

It's very common for HTML emails to run through a preflight process before going out, we usually run emails through a CSS inliner so our templates are clean but are compatible with webmail clients.

This allows developers to hook into the HTML just before it's manipulated for sending