startAnimation now returns an object with .stop() method. animations were not reliably stoppable before