Stop queue:work --daemon processing when app down.

Contrary to the documentation, the `queue:work --daemon` command happily
continues on processing events after the `down` command has been called,
which could lead to queue events being processed while database and code
migrations make the application unstable.

This fix adds a `isDownForMaintenance()` function into the QueueManager to
provide the Worker a way to find out if the application is down or not.

Implemented as part of the existing `daemonShouldRun()` function, since
that function already performs the required process of blocking future
events from being processed.