 
TODO

* Build
    - Win32
* Paths
    - Bezier paths
    - import bezier paths from Inkscape
    - import polyline path waypoints from Tiled map editor 
* Easing
    - stepped retro tween easing
* Tween Types
    - angle from/to angle + clockwise/anti
    - groups sequential and parallel, maybe overload + and *
    - shake rattling tween- shakes object violently
    - sprite animation, sprite opacity
    - move by not move to
    - rotate/skew/stretch with transform matrix tween
    - one time tick tween, like timer
    - delay tween, there just for delaying until completion event
    - add spawner non-linear ease
    - seeker direct target should be weak ref and add target dead event
    - some way to get int tween to clamp when floored for sprite tweens,
      add clamp arg to int tween and probably round arg
* Proxy decorators    
    - SDLx::Rect proxy for 2D paths
    - face angle for path tweens
    - add/remove to/from grid cell on move
* Timeline
    - elastic speed of time, FFW/REW, seek progress
    - add pause/resume
* API
    - before/after tween delay
    - allow speed instead of duration
    - animated role keeps list of animations
    - or maybe as a trait on a moose attribute, which makes it
      tweenable
* Demos
    - theatrical demo with parallel and sequenced tweens
    - shape tweening with lots of particls
    - rain
    - text typing demo
    - add fading trails to easing demo
* Safety
    - should warn if start/stop tween with destroyed timeline?
    - float setters should check for int targets and upgrade SV
    - if you upgrade targets of direct proxy to string
      (e.g. by Data::Dumpering it) you will never see
      tween updates. Maybe Devel::Peek it and warn?
    - solve tween tick destroying tweens issue, multiple tweeners
      is no solution    
* Refactor
    - template specialization on proxies not method overloading
    - specialize templates for FLOORED in linear tween form
    - refactor mess in tween factory
    - move to smart pointer
* Performance
    - share polyline paths
    - pool tweens
* Accuracy
    - add spawner skipped waves feature
    - throw away passing around times, instead cache tick time
      in clock


