clean up symbolic zero handling in transpose rules
We had a few rules in which:
1. transpoes rules didn't correctly handle symbolic zero cotangent
inputs, and/or
2. transpose rules returned the ad_util.Zero class rather than an
instance of it (and/or returned a singleton where they should return a
list)
This solves a FIXME in the code left by @apaszke.