Added a method for a new validation mode that checks the mail exchanger ...

I added a new DNS mode that will check the mail exchange record for the domain of an email. If the lookup comes back empty, it will raise an error on that email. I added test for DNS mode, just like the ones that are there for strict mode. 

The new DNS mode can help reduce input mistakes from a user, for example: A user types `some_email@gnail.com` when they were meaning to input `some_email@gmail.com`. In this example, strict mode would validate the email, but DNS mode would not. Or it can just stop fake emails from being inputed by users.

Please let me know what you think, if you would like me to add more tests, I would be more then happy to.