code: def add_model(self, ic, N=1, index=0):
          
          if type(index) in [list,tuple]:
              if len(index) != N:
                  raise ValueError('If a list, index must be of length N.')
          else:
              index = [index]*N
  
          for idx in index:
              existing = self.get_system(idx)
              tag = len(existing)
              self.add_child(ModelNode(ic, index=idx, tag=tag))
docs: Should only be able to do this to a leaf node.
  
          Either N and index both integers OR index is
          list of length=N