new feature: clock sync protocol pulsesync

This PR will add an implementation of the PulseSync described in [1]. This PR depends on #1425 .

[1] "Optimal Clock Synchronization in Networks", Lenzen et.al. 2009

IMPORTANT: I will refactor this code in the next few weeks. I will ping this PR when the code is ready for a
code review. Don't waste your time by reviewing this code now.