Add an option parser

On one hand, getopt (in particular the -o suboption syntax) sucks on the
server side, and on the client side we would like to avoid the glib
dependency.  We can roll out own option parser and solve both problems
and save a few lines of code total.
diff --git a/shared/config-parser.h b/shared/config-parser.h
index 27f528d..0619bb4 100644
--- a/shared/config-parser.h
+++ b/shared/config-parser.h
@@ -51,5 +51,23 @@
 char *
 config_file_path(const char *name);
 
+enum weston_option_type {
+	WESTON_OPTION_INTEGER,
+	WESTON_OPTION_UNSIGNED_INTEGER,
+	WESTON_OPTION_STRING,
+	WESTON_OPTION_BOOLEAN,
+};
+
+struct weston_option {
+	enum weston_option_type type;
+	const char *name;
+	int short_name;
+	void *data;
+};
+
+int
+parse_options(const struct weston_option *options,
+	      int count, int argc, char *argv[]);
+
 #endif /* CONFIGPARSER_H */