The mail module offers a better hook to manipulate html: `render_post_process`.
By using this, we make sure the transform is applied properly
before html tags sanitizing happens,
which can alter - if not screw - the final result.
Finally, it simplifies code :)
If premailer receives an empty value, such as an empty string,
on parsing, it returns None and fails when trying to call
'etree.fromstring()' on this None result.
We should avoid to call premailer on an empty string, as the result
will anyway not change.
We may have an empty template for instance when a template could not
compile due to a mistake.