The Nuts & Bolts of Cooperative Learning