big refactoring so that callback animations are added to an animation queue