template <typename Protocol>

class AsyncEventHandler

|AsyncEventHandler| is used by asynchronous clients to handle events using

natural types. It also adds a callback for handling fatal errors.