Are humans too generous and too punitive? Many researchers have concluded that classic theories of social evolution (e.g., direct reciprocity, reputation) are not sufficient to explain human cooperation; instead, group selection theories are needed. We think such a move is premature. The leap to these models has been made by moving directly from thinking about selection pressures to predicting patterns of behavior and ignoring the intervening layer of evolved psychology that must mediate this connection. In real world environments, information processing is a non-trivial problem and details of the ecology can dramatically constrain potential solutions, often enabling particular heuristics to be efficient and effective. We argue that making the intervening layer of psychology explicit resolves decades-old mysteries in the evolution of cooperation and punishment.