Fixed a small bug in Matrix that was inserting a diagonal element out of order in uncommon cases.
More fully fleshed out coarse mesh preconditioner with tests.