Refactor client.py: operation.__call__() to smaller methods