Added a mailer class that accepts a mailer service
- Allows us to add mailer specific functionality without affecting the
  services