超スマートポインタ

超スマートポインタの仮実装が完成した。
とは言ってもhttp://www.research.ibm.com/people/d/dfb/papers/Bacon01Concurrent.pdfにある循環検出をべたに実装して、普通のスマートポインタと組み合わせただけなのだけれど。
今のところroot_setにあるかどうかの検出や参照カウントや色の保持などは外部にあるstl::setやstl::mapに格納しているため、明らかに動きが遅いという欠点がある。なのでこの実装は実用にならない、というわけで仮実装なのである。おいおい速度を上げて使える実装にするつもり。