Refactor generateManifest infra tool

- Changed from using bash/perl to using go.
- Now "if" statements in .gjson files can be stacked, and there can be
  conditional "or" statements inside, like |#if defined(A || B)|.
- Go tests were added to make sure that the generateManifest tool
  continues to work as expected.
- Updated docs to reflect the fact that the manifest is now generated
  with a different tool, and Go is now required in the build phase.

Change-Id: Id866d1a49a7ab4aac2dcf8d188c56bb8254a80de
diff --git a/testdata/manifest_small1_expected.json b/testdata/manifest_small1_expected.json
new file mode 100644
index 0000000..0e32581
--- /dev/null
+++ b/testdata/manifest_small1_expected.json
@@ -0,0 +1,7 @@
+{
+  "foo": "option",
+  "bar": 1,
+  "count": 2,
+  "shouldBe": true,
+  "so": 3.14
+}