Fix concurrent modification

While looping through Vectors of listeners, these Vectors could change,
invalidating the used loop method (Enumerations).
Add a Metronome provider