code: def are_cmddicts_same(dict1, dict2):
    
    
    # If the set of all keys are not the same, they must not be the same.
    if set(dict1.keys()) != set(dict2.keys()):
      return False
    
    # Everything in dict1 should be in dict2
    for key in dict1:
      # Check everything except children;  Check for children recursively
      for propertytype in dict1[key]:
        if (not propertytype in dict2[key] or
            dict1[key][propertytype] != dict2[key][propertytype]):
          return False
        
      # Check children
      if not are_cmddicts_same(dict1[key]['children'], dict2[key]['children']):
        return False
        
    return True
docs: Checks to see if two cmddicts are the same.
    Two cmddicts are defined to be the same if they have the same callbacks/
    helptexts/children/summaries for all nodes.