title: Need help on adding feature(Support STARTTLS) to py3-validate-email
body: <p><a href="https://github.com/karolyi/py3-validate-email/issues/19" rel="nofollow noreferrer">https://github.com/karolyi/py3-validate-email/issues/19</a></p>
  <p>I want to work on this pull request, but the last comment says:</p>
  <blockquote>
  <p>any host that will be probed might or might not support STARTTLS. the protocol being negotiated is completely different from the DNS records resolving.</p>
  </blockquote>
  <p>I need more context understanding of this comment and how can I add this feature to the existing codebase.</p>
  <p>How should I approach it so it doesn't conflict with the rest of the parts and users can choose to enable/disable the STARTTLS?</p>
  <p>I thought of the following approach:</p>
  <ul>
  <li>Check MX records for the specified host (contradicts with the last comment on issue)</li>
  <li>If the host has at least one valid MX record then I will check further if it supports upgrade to <code>STARTTLS</code></li>
  <li>If the host supports <code>STARTTLS</code> then the rest of the transactions will be carried out after initiating <code>starttls</code> from smtplib and fallback to unencrypted transaction if it fails.</li>
  </ul>
  <p>any help will be appreciated.</p>