I had made more than 200 plugins. I made plugins when
1. porting other javascript library, or add other html elements, like R0J0hound said
2. encapsulate logic, to reduce the complex of events.
C2 programming is composed by events and plugins. The best way to treat events is using them as glue logic to manipulate plugins (objects).