generalized ufunc signature problem fix

Fix for a problem in the generalized ufunc harness. When a generalized ufunc had a repeated cardinality within a single matrix in the signature, the arguments passed to the kernel function were incorrect.

Signatures like (m,m)->(m,m) didn't work. This pull-request fixes this