core: Never reschedule services to run immediately

In case the service exited with an error that was *not* a timeout,
we would previously reschedule the check to be run immediately
instead of after a gracetime. Since check errors tend to occur
multiple times if run with the exact same parameters, the same
error could spam over and over and over in the logs and fill them
up completely.

This patch prevents that, using the currently prevailing check
interval to reschedule the service check.

Signed-off-by: Andreas Ericsson <ae@op5.se>
lib/worker: Strip nul bytes from output before sending to master

This goes for both stderr and stdout, naturally. Without this, we
would report erroneous exit values for plugins that print nul bytes
in their output, which is kinda bad.

Signed-off-by: Andreas Ericsson <ae@op5.se>
lib/worker: Put stdout output last

It tends to be where malformed output is, so putting it last in
the return struct will at least let the scheduler parse the
other variables just fine.

Signed-off-by: Andreas Ericsson <ae@op5.se>