Proper integration of Domain class with integrators
- Domain is a collection of "integration points" encompassing kpoints and spins (was introduced during last sprint)
- Adjust the Domain class so integrators access kpoints/spins through it rather than kpoints/spin input arrays
- Remove the old distribute_domain() method in favour of newer, simplified version
- Users of "integrators" now create and pass Domain objects instead of raw arrays