Returning exception in call_or_unsupported should be extracted to a separate method.
Also, use it to replace incorrect exceptions in objfloat.rs (and others).
This should fix wrong exceptions, such as
>>>>> 1.1 - "a"
Traceback (most recent call last):
File <unknown>, line 0, in <module>
TypeError: Cannot add RefCell { value: [PyObj float 1.1] } and RefCell { value: [PyObj str "a"] }
should be
>>> 1.1 - "a"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for -: 'float' and 'str'