Support for optional animation completion handler

Hi,

I needed to kick off some code after the animation completes, so I went ahead and added a completion handler parameter.

Maz