Move EffectPlayer builtins into library

These can all be used stand-alone to play in-game effects.
Fix MaterialAndData constructor to work with interface
Add some helpful static utility classes