Really cool! But it doesn't seem to be deterministic. I played a "perfect move", took it back, played it again, and it was downgraded to something less than perfect. Also, I took a different move back and was presented different pieces to move. Maybe the engine, given a chance to run longer, updates the list of best moves?