Really cool project, thanks a lot! I actually like your choice of haskell - the example bots are beautiful. I thought about implementing something like this myself some time ago, but I wouldn't have been able to do it as well as you did.
Just one small concern about the tournament rules:
One round could take up to 10 second if both players make full use of their time, so one match of a 100 rounds could take up to 1000 seconds, right? And let's say there are at a very rough estimate 100 matches per tournament. And you want to run 1000 tournaments. Maybe I just made a stupid mistake, I am quite tired right now, but this could theoretically require years of computation time, couldn't it?
Oh, and I could probably translate bots into haskell, if you need help.
I paid for a transcription by CastingWords. It is now available at http://www.stephenibaraki.com/interviews_general/v0412/judea_pearl_interview_text.pdf . Sorry, that it took me so long.