Implemented boost::asio event loop