#17 major performance improvements by hiding the cost of creating and removing ChallengeNodes in animationLoop