Added EventLoop implementation