While staring at the onboard flight map, routes (to Europe, across Asia) often seem to differ quite a bit from what I'd imagine a great circle to be, with some kinks, deviations and returns to the 'original' general direction. I'd guess reasons for alterations include following tracks, traffic, weather, airspace charges, MH17-type avoidances and ATC slowdowns/sequencing when close to destination. Any other reasons - do pilots adjust flightpaths enroute to save fuel/make up time/avoid headwinds? Do pilots sometimes fly from one waypoint to the next rather than shortest distance?