A Modular Approach to Distributed Control System Design