Big commit: added the SMTP part, and modularized everything a lot
Updated todo