Extract diagonal via PyOP2 AST transformation
Add tests of MatrixFree solve

Test solving both a mass matrix problem, and a Poisson problem with
strongly imposed boundary conditions.