Mechanism Design For Decentralized Systems