remove support for python 2.5 - too many changes required

This reverts the following commits:
f330ac4b32f35ea638c1cb853013c5d974bba61c
4097fb1092d7a0968bd68119960da8385cfbad22
6fc69aee3b936e3b7a22c42dc239b0a4eacaa38e
00172a62c69b74b29c558ace2add3d89b4420e88
55698be01044a20064012124ef86722a767ef53

Except for the addition of the BlameInfo class.