i'm sorry, what in my post made you think i wouldn't be happy with your solution ?
i would even be happy with no generic at all if basic types implemented low level interfaces, and let me code my containers against things like "sortable, equatable, hashable" ( although it may pose other problems).