I'm not sure on this.

Either you would combine those, `method_exists` and `is_callable` otherwise you might try to call a `protected` method,
or you go with `is_callable` only and leave the `__call` logic to the object - which I would prefer.