Important change to Solver

By default variables are no longer evolved in the boundaries.
Instead, boundary conditions are applied to the values
coming from the solver.
Time-evolution of the boundaries can be enabled by setting

evolve_bndry = true

either in the variable-specific options section, or in the
"All" section.

The simulation time is now passed to applyBoundary(), enabling
time-evolving boundary conditions.
Tidying up MMS/diffusion2 example

After changes to solver and boundary conditions, only
require a small amount of code, none of it MMS-specific.