Changed events relying on FormClosed to rely on Disposed instead - as this was the intended case anyway.
Rename Pony.ShouldBeSleeping to Sleep
Added ISoundfulSprite interface and implemented for Pony, Pony2. Moved sound playing from Pony into PonyAnimator which is more sensible.

Made ActiveEffects into a private HashSet and used effect expiry to maintain it automatically. Made Location private.
Ensured PonyAnimator exits update loop when a game completes, otherwise a disposed exceptions occur.
Added community dialog - allowing links to be retrieved from the web. Most importantly it provides a notification about new versions becoming available.
Moved IDraggableSprite from DesktopSprites to DesktopPonies.