That is really nice stuff.
I found emailing a pain too, even in frameworks like Ruby-on-Rails, where mailing functions come out of the box.
Your approach sounds like supporting solutions to the main problems I had:
* templating, emails can support different Mime types
* attachments
* sending during development and test
I need to try your ideas out, but thanks for the write up already now :)