Adaptive Online Learning in Dynamic Environments