Improve input type
Rewrite mailers to use nject
Fix issue #6 and clean up the code