Add a missing `server_impl::notify_death()` call to `worker_impl`
Add `destroy()` function to `worker_impl`
The worker will call this function if it is about to leave its `exec()` scope.
This remove some redundant code.