Allow setting of POLLER_EXPIRY
Poller expiry needs to be a ull
Merge branch 'wip-set-timeout'

 to explain why this merge is necessary,