refactored so Ani acts as a factory for animations and not holding anything in a static list to avoid memory leaks