I'm venturing in unknown territory here... 
I am trying to work out how hard it could be to implement an Email client using Python:

Email retrieval 
Email sending
Email formatting
Email rendering

Also I'm wondering if all protocols are easy/hard to support e.g. SMTP, IMAP, POP3, ...

Hopefully someone could point me in the right direction :)
If I were you, I'd check out the source code of existing email-clients to get an idea: thunderbird, sylpheed-claws, mutt...
Depending on the set of features you want to support, it is a big project.
How hard is it to build an Email client? - Python