What are you planning to with multithreading? With the current type system, is it possible to statically detect inside the template if the refcount is used in shared scenario's, and base the implementation on that information? That would be ideal, if it is indeed possible.
std.stdio.File is refcounted, perhaps you can see to replace it's implementation with your template. Thanks you for this, I think it's great that D will have it out-of-the-box. Managing resources in say C# or Java is a pain in the wrist.
