Documentation: what's the deal with the reference counting here, how's it used, etc. ?  Apparently (just guessing based on the code here), the RefCount belongs to the linked list of QueueNodes and each Queue object that has it as ->queue has to attach to the RefCount in order to be cool doing that.  But I shouldn't be left guessing this, a comment preceding the Queue class should explain its design.