remove effect by dragging out
remove obsolete shadow code
Proper handling of multiple effects
Added equality function