Tried to use zero-divisors on a direct product.
Had to implement multiply for direct-product.
But how do I know that it's a ring?
That's a domain problem I need to think about,
so the relevant changes have been commented out,
but left in the code for possible future use.