fix calling destructors on qualified structs

+ optimize by not calling TypeInfo.next again and again
+ remove type info argument from GC.setAttr/setBits (I thought that was already in the previous PR)

The optimizations make the druntime/benchmark a little faster than the version from master.
Not really. I guess I thought the expressions with few spaces but lots of parentheses create too dense code.