Allow testing with full velocity mass matrix

Introduced parameter ignore_lumping to LumpedMass class, if this is set, the full mass matrix will be used in the multiply() and divide() methods instead of the lumped mass. This simplifies testing, as currently the Helmholtz solver does not converge with the lumped mass matrix. Note, however, that the get() method still returns the lumped mass matrix, and this is then used in the smoother, for example.
More elegant assignment

Use a more elegant operation for assigning to  the temporary variable p in the CG initialisation step.