Effects are now their own class