Nice. But when posting python, could you please put a link to a text file? Cutting and pasting from the browser then requires a lot of manual reindenting in vi :-(
That's my one complaint, and it's a generic Python complaint, not anything bad about your code, which I appreciate you posting.