rem: findInTree(W_Bag *tree, W_Node *node, int (*function)(void*,void*), void *cdata)
add: findInTree(W_Bag *tree, W_Node *node, WMMatchDataProc *function, void *cdata)
context: findInTree(W_Bag *tree, W_Node *node, int (*function)(void*,void*), void *cdata){    int index;    if (node == tree->nil)        return WBNotFound;    index = findInTree(tree, node->left, function, cdata);    if (index != WBNotFound)        return index;    if ((*function)(node->data, cdata)) {        return node->index;    }    return findInTree(tree, node->right, function, cdata);}