Distributed Coordination Theory for Robot Teams