now using pull updates and CADisplayLink