Updates the set to include all arguments passed in. If the keyword
        argument preprocess is passed, then each element is preprocessed
        before being added.

def update(self, *args, **kwargs):
        '''
        Updates the set to include all arguments passed in. If the keyword
        argument preprocess is passed, then each element is preprocessed
        before being added.
        '''
        preprocess = kwargs.get('preprocess')
        for s in args:
            for e in s:
                self._dict_set(preprocess(e) if preprocess else e, True)