Improve Synchronizer handling
-
The constructor is now private and can only be called by the SynchronizerManager
-
Building of exchange info is cleaner: checking if the lists have been build (on-demand) is no more obtained by checking if the lists are empty, one now use a unique pointer that is filled at construction. This strategy is safer (for instance, a processor could be empty which would generate a code crash in the previous implementation).