standalone event dispatcher to connect on demand

obviates the need for this being a context manager, making it more
shell-friendly