Make schedule_event handle relative time instead of aboslute time

To make the event queue not dependent on time shifts, like some
operator sets the system clock, the event queue needs to be converted
to use a monotonic clock. To prepare for that conversion, we should
remove the usage of absolute time in the event queue API.

Signed-off-by: Max Sikstrom <msikstrom@op5.com>
Make check module use callback events for hosts and service checks

The checks.c file used quite nasty interface for the event module,
tweaking raw parameters in the timed_event struct, which should be an
opaque type for the events.c module.

Let checks.c take over the functionality of lot of host/service check
specific filters in the events.c module, use callback events, but still
some event-time access is done. This does however mean that the
events.c can start getting refactored to remove lot of event-type
specific logic.

Signed-off-by: Max Sikstrom <msikstrom@op5.com>
Convert event in xpddefault to schedule_event call

The xpddefault already used callbacks for events, those callbacks had
incorrect prototypes. The expected no arguments, but returned a status
code. The callback for event module expected one argument (void * with
storage), and no return value. So make it match.

Signed-off-by: Max Sikstrom <msikstrom@op5.com>
Remove schedule_new_event and event_types all togheter

schedule_new_event is the last part that handled wall time in the event
queue interface (expect reading directly from the timed_event
structure, damn checks.c), which means we should remove it, if we want
to use a monotonic clock instead of wall time for the event queue.

Using a monotonic clock will make the time-skip-detection-function from
stone age totally irrelevant.

But we're not there yet... Check exeuction needs to be rewritten a bit
before, so it doesn't need to read time from the event, and probably
also not use wall-time for check exeuction logic.

This will however also break the API used in some modules for executing
timed event. Those modules should be updated to schedule_event anyway.
A wrapper for schedule_new_event, that uses schedule_event as a backend
would be useful if backward compatibility is expected.

Signed-off-by: Max Sikstrom <msikstrom@op5.com>