자식 소유
부모가 children Vec<Rc<Node>>로 자식을 소유한다.
Rc는 strong_count를 늘려 소유권을 공유하고, Weak는 weak_count만 늘려 값이 버려지는 것을 막지 않는다.
부모가 children Vec<Rc<Node>>로 자식을 소유한다.
자식의 parent는 Weak<Node>로 부모를 가리킨다.
부모가 살아 있는지 Option<Rc<T>>로 확인한다.
strong_count가 0이면 weak가 남아도 값은 해제된다.
서로를 Rc로 잡으면 카운트가 0이 되지 않는다. 소유 관계와 관찰 관계를 Rc와 Weak로 나누는 것이 핵심이다.