Usability enhancement. Now that the Curve and Gradient Libraries can be accessed from the Editor toolbar, the user instinct is to double click the Curve or Gradient to edit them. When used from the Effect editor double click is a select. Enhance both library classes to specify how the double click behavior acts, so they can be used in two different contexts.
A couple of minor performance tweaks. Foreach over enumerator rather than convert to list to do a linq expression. Convert initializer to use member variable to prevent unneeded events firing.