Add killSwitchType property to options

This property indicates whether an option can be kill-switched or
otherwise must be ignored by the kill switch mechanism.

Change-Id: I54f2815ff115e3642e37b9cbde3bbc5abccd1e35
diff --git a/src/common/optionsPrototype.json5 b/src/common/optionsPrototype.json5
index 64d1745..5db7285 100644
--- a/src/common/optionsPrototype.json5
+++ b/src/common/optionsPrototype.json5
@@ -3,119 +3,147 @@
   'list': {
     defaultValue: true,
     context: 'options',
+    killSwitchType: 'option',
   },
   'thread': {
     defaultValue: true,
     context: 'options',
+    killSwitchType: 'option',
   },
   'threadall': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'fixedtoolbar': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'redirect': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'history': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'loaddrafts': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'increasecontrast': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'stickysidebarheaders': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'profileindicator': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'profileindicatoralt': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'profileindicatoralt_months': {
     defaultValue: 12,
     context: 'options',
+    killSwitchType: 'ignore',
   },
   'ccdarktheme': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'ccdarktheme_mode': {
     defaultValue: 'switch',
     context: 'options',
+    killSwitchType: 'ignore',
   },
   'ccforcehidedrawer': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'ccdragndropfix': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'batchlock': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'enhancedannouncementsdot': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'repositionexpandthread': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
   'disableunifiedprofiles': {
     defaultValue: false,
     context: 'options',
+    killSwitchType: 'option',
   },
 
   // Experiments:
   'threadlistavatars': {
     defaultValue: false,
     context: 'experiments',
+    killSwitchType: 'experiment',
   },
   'autorefreshlist': {
     defaultValue: false,
     context: 'experiments',
+    killSwitchType: 'experiment',
   },
 
   // Internal options:
   'ccdarktheme_switch_enabled': {
     defaultValue: true,
     context: 'internal',
+    killSwitchType: 'ignore',
   },
 
   // Deprecated options:
   'escalatethreads': {
     defaultValue: false,
     context: 'deprecated',
+    killSwitchType: 'deprecated',
   },
   'movethreads': {
     defaultValue: false,
     context: 'deprecated',
+    killSwitchType: 'deprecated',
   },
   'batchduplicate': {
     defaultValue: false,
     context: 'deprecated',
+    killSwitchType: 'deprecated',
   },
   'smei_sortdirection': {
     defaultValue: false,
     context: 'deprecated',
+    killSwitchType: 'deprecated',
   },
   'forcemarkasread': {
     defaultValue: false,
     context: 'deprecated',
+    killSwitchType: 'deprecated',
   },
 }