A C++ Event LOop (basically an interface around epoll)