Fixes for PETSc on Hopper

Configure script no longer enforces C++ support

Problems with PETSC_DEPRECATED macro (3.4) fixed
by defining in header.

Other small fixes to solvers

Signed-off-by: Ben Dudson <bd512@york.ac.uk>