Distributed Algorithms Courssework