Add support for genrule

Add genrule, which uses a host executable (possibly built by the
build system) to generate a single source file.  This differs slightly
from gensrcs, which takes a list of sources and translates them through
a host executable to individual source files.

Change-Id: I94bda62c4c53fb3f3817def190e6a7561508d297
diff --git a/cmd/soong_build/main.go b/cmd/soong_build/main.go
index 4bb6a8c..8f5fae7 100644
--- a/cmd/soong_build/main.go
+++ b/cmd/soong_build/main.go
@@ -58,6 +58,7 @@
 	ctx.RegisterModuleType("cc_test_host", cc.CCTestHostFactory)
 
 	ctx.RegisterModuleType("gensrcs", genrule.GenSrcsFactory)
+	ctx.RegisterModuleType("genrule", genrule.GenRuleFactory)
 
 	ctx.RegisterModuleType("art_cc_library", art.ArtCCLibraryFactory)
 	ctx.RegisterModuleType("art_cc_binary", art.ArtCCBinaryFactory)