Add Firefox support

The release.bash script has been updated, and now depends on a helper
script called generateManifest.bash. A "--browser" flag (shorthand "-b")
has been added to the script in order to specify the target browser.

Now the manifest.json file is saved as a template at
templates/manifest.gjson (gjson stands for Generic JSON), which includes
conditional clauses which indicate what parts of the manifest are
applicable to each browser.

generateManifest.bash generates the src/manifest.json file.

Change-Id: Ib051f3d893045c1377007b9b076ffa7a702d9648
diff --git a/templates/manifest.gjson b/templates/manifest.gjson
new file mode 100644
index 0000000..b8ce324
--- /dev/null
+++ b/templates/manifest.gjson
@@ -0,0 +1,71 @@
+{
+  "manifest_version": 2,
+  "name": "__MSG_appName__",
+  "version": "0",
+#if defined(CHROMIUM)
+  "version_name": "dirty",
+#endif
+  "description": "__MSG_appDescription__",
+  "icons": {
+    "512": "icons/512.png",
+    "128": "icons/128.png"
+  },
+  "content_scripts": [
+    {
+      "matches": ["https://support.google.com/s/community*"],
+      "js": ["console_inject.js"]
+    },
+    {
+      "matches": ["https://support.google.com/s/community*"],
+      "js": ["console_inject_start.js"],
+      "run_at": "document_start"
+    },
+    {
+      "matches": ["https://support.google.com/*/threads*"],
+      "js": ["forum_inject.js"]
+    },
+    {
+      "matches": ["https://support.google.com/*/thread/*"],
+      "js": ["thread_inject.js"],
+      "run_at": "document_end"
+    },
+    {
+      "matches": ["https://support.google.com/*/profile/*"],
+      "js": ["profile_inject.js"]
+    }
+  ],
+  "permissions": [
+    "https://support.google.com/s/community*",
+    "https://support.google.com/*/threads*",
+    "https://support.google.com/*/thread/*",
+    "storage"
+  ],
+#if defined(CHROMIUM)
+  "options_page": "options.html",
+#endif
+  "options_ui": {
+    "page": "options.html",
+#if defined(CHROMIUM)
+    "chrome_style": true,
+#endif
+#if defined(GECKO)
+    "browser_style": true,
+#endif
+    "open_in_tab": false
+  },
+  "background": {
+#if defined(CHROMIUM)
+    "persistent": false,
+#endif
+    "scripts": ["background.js"]
+  },
+#if defined(GECKO)
+  "browser_specific_settings": {
+    "gecko": {
+      "id": "twpowertools@avm99963.com",
+      "strict_min_version": "55.0"
+    }
+  },
+#endif
+  "default_locale": "en"
+}