Now uses Boost::Asio instead of Asio