separate off Poller code into cpp/poller.cpp