EventPump<TEvent, TListener>
EventPump base class pulls events of any type out of an EventQueue and sends
            them to any listener. It is used to send events back to
            the client without using the CallContext of the test
            runner thread.
            
                
Gets or sets the name of this EventPump
            (used only internally and for testing).
            
Gets or sets the current state of the pump
            
Constructor
            
Dispose stops the pump
            Disposes the used WaitHandle, too.
            
Start the pump
            
Tell the pump to stop after emptying the queue.