A Duality-Based Framework for Designing Simple Mechenisms