Create a abstract method that is called when Targetnodes change.Effects can use this to do some sanity checking or setup work like validate colors for the nodes underneath it. This lets all the color property work happen right when it has new nodes instead of waiting until rendered. Eliminates having the need for null or black colors to determine a new effect. Frees the color/colorgradient getter from processing a bunch of logic that slows things down.Fixed up all effects to implement this method. Those that need to do nothing just have empty implementations.
Fix unneeded dispose causing the editor to crash on closing.
Fire off rendering of single elements ahead of the queue so people can work on them while other rendering catches up.