Polling models: theory and applications