define base classes for listener and post connect
helper for capturing manage ptr, pass by pointer instead of ref