Played with some field-summing functions
Added SmartField magnitude "memory"

Acccesses of magnitudeAt() are stored in a std::unordered_map so other
particlesin the same voxel can access them
Completed documentation for all files and classes
Changed locations to tuples

- It's really fast but I think the data is bad. Oh dear.
Tuple refactor complete + other fixes
Merge branch 'tuple-refactor'