prisoner's dilemma, commented for easy reading