Field equality

Personally I'm not entirely sure I like this definition of equality. If I somehow get two fields where `B` is different, and I'm looping over the fields and I want to run a cleaning operation on a single field, it seems to me that this is the last behavior I would want.

Ideally the program would crash, forcing me to fix my code. If we don't go for that, than it would be nice if the program ignored the different `B`s and applied the clean operation to the column I want it applied on. This equals implementation silently ignores the fact that I have bad code, and silently fails to apply the cleaner to the field I wanted it applied to as well.