Factor the Brillouin zone logic out of wraparound.
Calculation of a Brillouin zone probably belongs in lattice, but whether it should play with TranslationalSymmetry or PolyatomicLattice depends on #73. Also we should probably keep in mind further symmetry generalizations planned for #38 (closed).
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information