Revert "Remove superfluous impls"

Turns out ~T won't actually autoborrow to &T when casting to a trait
object. See mozilla/rust#10347

This reverts commit c2a755dd95315563605ce4e45fecaf6064a59dc0.