new polling service, very reusable and testable