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.
try to clean up this mess
do we still need to do anything with interrupts? is just atomic_cmpxchg enough?