The following things could be updated for a cleaner interface between core code and user side.
MagneticField is currently a class with the field, and g-factors for each site, refactor to put g-factor on sites, and convert class to an just array containing the field field.
- The output of calculations should really be wrapped up as an object
- Positions could be a an array, rather than a list of arrays