It's well known that co-op makes just about every game more fun. But how do you design a game that takes good advantage of its co-op, and how do you avoid some of its common pitfalls?