Support clocks for sync objects

A race still may happen after a few test set runs (in case the same slab object will be used), since completion variables are not handled yet.
here you have racy use-after-free, when you evaluate sync->next, sync is already freed