//Usability: Works if SMTP information is provided
        //Recipients: Multiple (sep: ;?)
        //Attachments: Single (multi not tested)
        //Signature: No (not verified)
        //Send Direct: Only
        public void SendMail(SmtpMailServer smtpMailServer, Email email)
        {
            var smtpServer  = BuildSmtpClient(smtpMailServer);
            var mailMessage = BuildEmailMessage(email);

            Send(mailMessage, smtpServer);
        }
        private static SmtpClient BuildSmtpClient(SmtpMailServer smtpMailServer)
        {
            var smtpServer = new SmtpClient(smtpMailServer.SmtpServer)
            {
                Port        = smtpMailServer.PortNumber,
                Credentials = new NetworkCredential(smtpMailServer.Username, smtpMailServer.Password.ToInsecureString()),
                EnableSsl   = smtpMailServer.EnableSsl
            };

            return(smtpServer);
        }