The Evolution Of Fairness Preferences, Altruistic Punishment, And Cooperation