[MEDIUM] implement "http-check disable-on-404" for graceful shutdown

When an HTTP server returns "404 not found", it indicates that at least
part of it is still running. For this reason, it can be convenient for
application administrators to be able to consider code 404 as valid,
but for a server which does not want to participate to load balancing
anymore. This is useful to seamlessly exclude a server from a farm
without acting on the load balancer. For instance, let's consider that
haproxy checks for the "/alive" file. To enable load balancing on a
server, the admin would simply do :

  # touch /var/www/alive

And to disable the server, he would simply do :

  # rm /var/www/alive

Another immediate gain from doing this is that it is now possible to
send NOTICE messages instead of ALERT messages when a server is first
disable, then goes down. This provides a graceful shutdown method.

To enable this behaviour, specify "http-check disable-on-404" in the
backend.
diff --git a/src/backend.c b/src/backend.c
index a8676b3..cc12f7a 100644
--- a/src/backend.c
+++ b/src/backend.c
@@ -60,6 +60,8 @@
 {
 	if (!weight)
 		return 0;
+	if (state & SRV_GOINGDOWN)
+		return 0;
 	if (!(state & SRV_RUNNING))
 		return 0;
 	return 1;
@@ -193,7 +195,8 @@
 		int max = 0;
 		best = NULL;
 		for (cur = px->srv; cur; cur = cur->next) {
-			if ((cur->state & (SRV_RUNNING | SRV_BACKUP)) == flag) {
+			if (flag == (cur->state &
+				     (SRV_RUNNING | SRV_GOINGDOWN | SRV_BACKUP))) {
 				int v;
 
 				/* If we are forced to return only one server, we don't want to