'Adds the \'what\' (such as users or hosts) to the \'item\''

def _add_remove_uh_to_topic(self, item, what):

    uhs = getattr(self, what)
    if (len(uhs) == 0):
        raise AttributeError
    op = ('%s_%s_%s' % (self.topic, self.op_action, what))
    try:
        self.execute_rpc(op=op, **{'id': item, what: uhs})
        setattr(self, ('good_%s' % what), uhs)
    except topic_common.CliError as full_error:
        bad_uhs = self.parse_json_exception(full_error)
        good_uhs = list((set(uhs) - set(bad_uhs)))
        if (bad_uhs and good_uhs):
            self.execute_rpc(op=op, **{'id': item, what: good_uhs})
            setattr(self, ('good_%s' % what), good_uhs)
        else:
            raise
