Need to audit code carefully, consolidate between stencil and cshift, and then benchmark and optimise.