The GC will now call destructors on heap allocated structs

This is the accompanying PR (which this requires) to D-Programming-Language/druntime#864, which includes the fix to the delete operator so that it will free the memory of pointers to structures that only have a destructor defined. Due to the overlap in required code between my fix for the delete issue and the fix to call destructors on structs, it would be very difficult to make them 2 separate PRs, so I have instead opted to stay with 1 PR which fixes both.
I don't see any relation to the patch that would need changes. Doesn't it work anymore after applying the PR? 

Actually, I wonder how test1() worked so far. Isn't it testing the behaviour implemented by this?