Backport new exception to python 2.4

We use the e.args field elsewhere and it is set only if we call Exception.__init__ in python 2.4
Merge pull request #1462 from nouiz/py24

Backport new exception to python 2.4