[MEDIUM] config: automatically find unused IDs for proxies, servers and listeners

Until now it was required that every custom ID was above 1000 in order to
avoid conflicts. Now we have the list of all assigned IDs and can automatically
pick the first unused one. This means that it is perfectly possible to interleave
automatic IDs with persistent IDs and the parser will automatically allocate
unused values starting with 1.
diff --git a/include/types/server.h b/include/types/server.h
index 45528fa..fa01810 100644
--- a/include/types/server.h
+++ b/include/types/server.h
@@ -135,6 +135,7 @@
 	struct {
 		const char *file;		/* file where the section appears */
 		int line;			/* line where the section appears */
+		struct eb32_node id;		/* place in the tree of used IDs */
 	} conf;					/* config information */
 };