Move op_overload into a visitor class
Merge pull request #3278 from yebblies/op_overload

[DDMD] [refactor] Move op_overload into a visitor class