split out the boundary operations: periodic, freeflow, and mirror's copy and negate.  gave the task of applying them up to the equations.  now equations have control over which states are negated in the mirror boundary.  also now poisson should be able to use boundary kernels instead of the repeat argument, once i make that change...