docs: def makeGroup(self, parent, thissizer, group, *args):
          '''
          Messily builds the (potentially) nested and grouped layout
  
          Note! Mutates `self.reifiedWidgets` in place with the widgets as they're
          instantiated! I cannot figure out how to split out the creation of the
          widgets from their styling without WxPython violently exploding
  
          TODO: sort out the WX quirks and clean this up.
          '''
  
          # determine the type of border , if any, the main sizer will use
          if getin(group, ['options', 'show_border'], False):
              boxDetails = wx.StaticBox(parent, -1, group['name'] or '')
              boxSizer = wx.StaticBoxSizer(boxDetails, wx.VERTICAL)
          else:
              boxSizer = wx.BoxSizer(wx.VERTICAL)
              boxSizer.AddSpacer(10)
              if group['name']:
                  boxSizer.Add(wx_util.h1(parent, group['name'] or ''), 0, wx.TOP | wx.BOTTOM | wx.LEFT, 8)
  
          group_description = getin(group, ['description'])
          if group_description:
              description = wx.StaticText(parent, label=group_description)
              boxSizer.Add(description, 0,  wx.EXPAND | wx.LEFT, 10)
  
          # apply an underline when a grouping border is not specified
          if not getin(group, ['options', 'show_border'], False) and group['name']:
              boxSizer.Add(wx_util.horizontal_rule(parent), 0, wx.EXPAND | wx.LEFT, 10)
  
          ui_groups = self.chunkWidgets(group)
  
          for uigroup in ui_groups:
              sizer = wx.BoxSizer(wx.HORIZONTAL)
              for item in uigroup:
                  widget = self.reifyWidget(parent, item)
                  # !Mutate the reifiedWidgets instance variable in place
                  self.reifiedWidgets.append(widget)
                  sizer.Add(widget, 1, wx.ALL, 5)
              boxSizer.Add(sizer, 0, wx.ALL | wx.EXPAND, 5)
  
          # apply the same layout rules recursively for subgroups
          hs = wx.BoxSizer(wx.HORIZONTAL)
          for e, subgroup in enumerate(group['groups']):
              self.makeGroup(parent, hs, subgroup, 1, wx.ALL | wx.EXPAND, 5)
              if e % getin(group, ['options', 'columns'], 2) \
                      or e == len(group['groups']):
                  boxSizer.Add(hs, *args)
                  hs = wx.BoxSizer(wx.HORIZONTAL)
  
          thissizer.Add(boxSizer, *args)