use a more efficient vtable representation

[TyDesc, ... methods] -> [destructor, ... methods]