I've set the calling functions as StartTimedEffect, StartSpecialEffectTimed and StartSpecialEffectTargetTimed. I use Start as prefix because it starts the effects and nobody has to care if it's attached to a timer or something else, the code will care of the effects cleaning.
I won't change the private functions names because the user doesn't need to deal with them, because they're private.
I think it's fine enough. What do you think??