Use call_user_func for PHP < 5.4 compatability and accept __invoke