Destroy: to destroy a subtree, first prune it from the tree that contains it.
Warning: subtrees become invalid pointers.
typedef enum {Left,Right,Up} direction;
typedef int element;
typedef struct node {
element value;
struct node *left,*right,*up;
} node;
typedef node *binary_tree;