umath static analysis fixes

one significant memory leak (added in 1.9) and a few insignificant ones fixed, found by cpycheck

also fixed the api checksum warnings that occur due to the annotations not printed as repr (with pointer values) instead of str
@charris the function creates nop + 1 references to the new type but only outputs nop of them (not that it really matters as the descriptions are singletons, but its noise in static analysis)

decref would work too, but I updated it to yet a different variant