Since detached tasks are supported by clang and the OpenMP runtime, Archer must expect to receive the corresponding callbacks.
This patch adds support to interpret the synchronization semantics of omp_fulfill_event and cleans up the handling of task switches.
The task_late_fulfill.c currently cannot use if(0) for the first task to avoid the race on f_event.