Various changes.

SKIPLIST
--------

a. seperate the skiplist strcuture and functions from the linked list and the actual data to be ordered

till now the skiplist was programmed to be used for entries and directories. As a consequence the various headers
had to be included. This is not very flexible. Now the skiplist uses callbacks to move through and change the data. like:

- compare
- next
- prev
- lock
- unlock
- count
- first
- last
- insert_before
- insert_after
- delete

b. remove the skiplist locking functions since callbacks are used (see a.)

BEVENTLOOP
----------

a. add a callback when a signal handler is used in combination with a eventloop

WORKERTHREADS
-------------

a. add a queue of jobs (a job is nothing more than a callback and data) when no thread is available and cannot be created

when a thread is ready with it's current job, check the queue of jobs (and process that first) before returning in the wait state.