1. API of Instance Group plugin 
   for exporting to other plugins
- instGroup_obj.GetGroup(group_name)              
  :: get instance group by name. It will create a new one if group does not exist.
- instGroup_obj.DestroyGroup(group_name)              
  :: Destroy instance group by name.  


2. API of instance group object
   for manipulating instance group object in other plugins
- group.Clean()
  :: clean this group.   
- group.GetSet()
  :: get uid in a hash table of this group.
- group.GetList()
  :: get uid in a list of this group.   
- group.AddUID(uid)
  :: add uid into group
- group.RemoveUID(uid)
  :: remove uid from group. Do nothing if the uid is not in this group.
- group.SetByUIDList(uid_list)
  :: Set group by a uid list.
- group.UID2Index(uid)
  :: map uid to index. Return (-1) if uid is not in this group.
- group.Index2UID(index)
  :: map index to uid. Return (-1) if index is not in this group.    
- group.IsInGroup(uid)
  :: Retrun true if uid is in this group.    
- group.Copy(other_group)
  :: Copy other_group to this group.  
- group.Union(other_group)
  :: Do union operation with other_group.
- group.Complement(other_group)
  :: Do complement operation with other_group.
- group.Intersection(other_group)
  :: Do intersection operation with other_group.
- group.Shuffle()
  :: Shuffle this group.
- group.ToString()
  :: get JSON string of this group.
- group.JSONString2Group(JSON_string)
  :: Set group from JSON string which get from group.ToString().