Distributed Algorithms, second edition (An Intuitive Approach)