In answer to your question, RBNode should not be accessible direction outside of RedBlackTree. But we don't have allocators inside of Phobos, so I used the easiest thing I could for portability.-Steve
Does this mean that in the long run RBTree should allocate its RBNodes using a non-GC allocator (such as std.allocator) instead?