Implementiere syncfunc_t

syncfunc_t ersetzt syncthread_t und beschreibt eine
kooperative Funktion, die wiederholt in einem
bestimmten Threadkontext ausgeführt wird.

Das erspart das Synchronisieren vieler solcher
Funktionen untereinander durch Locks.
Implementiere synclink_t

Ein synclink_t verbindet zwei Strukturen
durch zwei Pointer miteinander.

Das erlaubt das Verschieben einer Struktur
im Speicher (Kompaktieren), ohne die Pointer
ungültig zu machen.

Ein synclinkd_t erweitert den synclink_t;
er verbindet eine Struktur mit zwei weiteren,
einer prev- und einer next-Struktur.

Other Changes:

* Ändere Typ von Variablen end_offset / start_offset
  in queue_page_t von uint32_t zu uint16_t.
Verschiebe atomic.h nach memory/
Vereinige syncwait_func_t und syncfunc_t

* Der Name contlabel wurde in contoffset umbenannt
  und der Typ von void* nach uint16_t verändert.

* Alle Warte-Felder wurden in die Definition von sycnfunc_t
  aufgenommen.

* Add neues Feld waitresult zu syncfunc_t

* syncwait_func_t wurde gelöscht.

* Neue Funktionen wie relink_syncfunc, unlink_syncfunc usw. imlementiert

* syncfunc_opt_WAITRESULT speichert das Ergebnis der Warteoperation