Factory for application listener, put __invoke back into em trait