unicode handling and python 2.6 compatibility