Operator overriding by routine(left[, right])  is now operational.

Next step is probably to support overriding per package.
With current implementation, the first routine found is assumed to be the good one.
No way to indicate that we have nothing to override, given the arguments.
A possible way could be to return no result, and let the interpreter try the next routine
(in the standard search order), until a routine returns a value.  If no result after having
called all the candidate routines then fallback to the standard behavior :
send message to the let argument, passing the right argument if any.