I'm such a feature creep so I've been toying around with generics since 2.1.4 came. The only thing needed for this to be a truly nice feature is private nested classes