Boundary conditions

Making this into a pull request to allow commenting, etc. Still premature to actually pull, but I think everyone involved knows that.
I like the other names, but "constant_exterior" seems slightly clunky. Is "constant" better (keeping in mind it's in the BoundaryConditions namespace)?