Moving encrypt, sign and send logic from gateway (SMTP) to a MailService

Creates a MailService that has the logic for encrypting, signing and sending messages. Factors that logic out of EncryptedMessage so it can be used by other clients