Topic/operators

The remaining tests have succeeded, I'm quite confident now that this implementation is a good choice.
putting this in a new line makes it easier to set a breakpoint in a debugger