binding convenience handles to x
removing awkward conditional transpose required for product_trace
tweaking comments
speeding up adding to diagonal
ensuring multiplication is done as fast as possible