Restore py24 compatibility

I don't much like this branch, but if Python 2.4 compatibility is more important than code clarity, feel free to pull it.

**Note**: I can't run tests w/ 'tox -e py24' on my machine any longer:  I had to manually create a Python 2.4 virtualenv and install there to run them.

Rather than merge this PR, I think we could just declare that 0.6.10 was the last Python 2.3- / 2.4- compatible release and be done with it.  The bump to 1.0.0 signals a big, possibly-incompatible change anyway.