Atlast! I am really, really happy you did this. Could I ask you to upload the python module to the python package index
http://www.python.org/pypi
That will make it easy for other projects to depend on it. If that's too much trouble, I'd be willing to do it for you.
Also can you add some platform detection to set the default encoding. Something like
if 'linux' in sys.platform.lower() or 'darwin' in sys.platform.lower():
default_encoding = 'utf-8'
Thanks and great work.
EDIT: Browsing through the code it doesn't look like you have support for embedded images, or did I miss it?