MINOR: init: add -dW and "zero-warning" to reject configs with warnings

Since some systems switched to service managers which hide all warnings
by default, some users are not aware of some possibly important warnings
and get caught too late with errors that could have been detected earlier.

This patch adds a new global keyword, "zero-warning" and an equivalent
command-line option "-dW" to refuse to start in case any warning is
detected. It is recommended to use these with configurations that are
managed by humans in order to catch mistakes very early.
diff --git a/src/cfgparse-global.c b/src/cfgparse-global.c
index 0e69059..2b32497 100644
--- a/src/cfgparse-global.c
+++ b/src/cfgparse-global.c
@@ -133,6 +133,11 @@
 			goto out;
 		global.mode |= MODE_QUIET;
 	}
+	else if (!strcmp(args[0], "zero-warning")) {
+		if (alertif_too_many_args(0, file, linenum, args, &err_code))
+			goto out;
+		global.mode |= MODE_ZERO_WARNING;
+	}
 	else if (!strcmp(args[0], "tune.runqueue-depth")) {
 		if (alertif_too_many_args(1, file, linenum, args, &err_code))
 			goto out;