I went through some similar learning curve, re-discovering JavaScript.
As a side-effect, I also discovered JavaScript on server-side, and the quick feedback, dynamic nature of JavaScript is really nice.
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 :)