- fix tests broken by refactoring
- reverse factoring of field/field_denom/field_num as it was hacky and unclear.
- restructure and clean documentation