move poller into own submod