engine_lwt: daemon shutdown

daemons can now be shutdown, providing a thread to wait for all
running threads to finish. Daemons now have an internal state
indicating if they've shutoff. If they are, it is not possible to send
any new task. Hence the change of signature for `send`.