Adding boundary conditions

o Neumann2  : 2nd-order one-sided differencing for Neumann boundaries

o NeumannPar : Variation on Neumann boundaries, including a factor of
               sqrt(g_22)
Small fix to BoutMesh cleanup

No longer tries to free comm_middle, as it's not a distinct
communicator (see previous commit)
Adding boundary options for Laplacian solve

See include/invert_laplace.hxx for new codes

o Set zero-Laplacian for DC on inner boundary (131072)

o Set the inner boundary width to 1 (262144)

o Set the outer boundary width to 1 (524288)

o Two boundary conditions similar to Neumann, but
  with metric component g_22
Small improvement to restart.py

restart.create can now pull out a given "final" time-point from
a set of dmp files, to create a new set of restart files.