Как обращаться к функции\методу каждый раз перед вызовом другой?
Почитайте про декораторы. Возможно, это то что нужно -habrahabr.ru/post/141411
А конкретнее вам нужен декоратор метода. Это во второй части статьи что указана в ссылке.
как вариант в самом базовом классе:class Foo(object):
    def __getattribute__(self, name):
        attr = super(Foo, self).__getattribute__(name)

        if name in ('abc', 'bar'):
            call_some_function()

        return attr
или если надо применить для всех функций:class Foo(object):
    def __getattribute__(self, name):
        attr = super(Foo, self).__getattribute__(name)

        if callable(attr):
            call_some_functuon()

        return attr
или так:class Foo(object):
    def __getattribute__(self, name):
        attr = super(Foo, self).__getattribute__(name)

        return some_decorator(attr) if callable(attr) else attr
правда это совсем не python way, лучше, как уже посоветовали, - декораторами