'Ensures we have a connection to the email server. Returns whether or
not a new connection was required (True or False).'

def open(self):

    if self.connection:
        return False
    try:
        self.connection = smtplib.SMTP(self.host, self.port, local_hostname=DNS_NAME.get_fqdn())
        if self.use_tls:
            self.connection.ehlo()
            self.connection.starttls()
            self.connection.ehlo()
        if (self.username and self.password):
            self.connection.login(self.username, self.password)
        return True
    except:
        if (not self.fail_silently):
            raise
