Added Sprite dispose() instance method and disposeWhenFinishedAnimating property

This small feature allows you to dispose of a Sprite instance explicitly with a `dispose()` method, or you can set a Sprite instance to `disposeWhenFinishedAnimating`, which disposes of a Sprite instance when it's done doing a non-looped animation call. Very useful if you are using a SpriteManager to control basic one-off Sprite instances like explosions, where you can now set the SpriteManager instance capacity to a relatively low number and it'll just recycle Sprite instances instead of allocating new ones.