[WIP] Refactor pollers to allow better extensibility