OPS-1381 Email Support

Adds a module for sending email.
Discussed in person w/ Paul. I've done wrapping on exceptions in the past. IMO the thing to do here is to repackage the exceptions from smtplib b/c that's a python standard library. This will allow the client code the ability to catch the exceptions w/o importing a new lib *and* leave the exception specificity as is. 

I agree if this lib knows the right thing to do then it should do that, but here I'm guessing most of the issues will be with downstream code since this is a fairly thin wrapper.