Lookup for commands in kmod_module_new_from_lookup()

Install and remove commands are now properly treated on lookup. Example
config file:

$ ./test/test-lookup installme
libkmod version 1
Alias: 'installme'
Modules matching:
	installme
		install commands: 'echo "this is a install message"'

$ ./test/test-lookup removeme
libkmod version 1
Alias: 'removeme'
Modules matching:
	removeme
		remove commands: 'echo "this is a remove message"'
diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c
index e901b76..dd340ee 100644
--- a/libkmod/libkmod-module.c
+++ b/libkmod/libkmod-module.c
@@ -482,7 +482,8 @@
 	err = kmod_lookup_alias_from_symbols_file(ctx, alias, list);
 	CHECK_ERR_AND_FINISH(err, fail, list, finish);
 
-// TODO: add lookup for install commands here.
+	err = kmod_lookup_alias_from_commands(ctx, alias, list);
+	CHECK_ERR_AND_FINISH(err, fail, list, finish);
 
 	err = kmod_lookup_alias_from_aliases_file(ctx, alias, list);
 	CHECK_ERR_AND_FINISH(err, fail, list, finish);
@@ -849,6 +850,12 @@
 	return mod->install_commands;
 }
 
+void kmod_module_set_install_commands(struct kmod_module *mod, const char *cmd)
+{
+	mod->init.install_commands = true;
+	mod->install_commands = cmd;
+}
+
 /**
  * kmod_module_get_remove_commands:
  * @mod: kmod module
@@ -896,6 +903,12 @@
 	return mod->remove_commands;
 }
 
+void kmod_module_set_remove_commands(struct kmod_module *mod, const char *cmd)
+{
+	mod->init.remove_commands = true;
+	mod->remove_commands = cmd;
+}
+
 /**
  * SECTION:libkmod-loaded
  * @short_description: currently loaded modules