I am working on a Component that will add a set of administrative functionality, which I am fairly confident in, but part of its behaviour will rely on code being triggered by events, which seems to be very much the role of a Plug-In.
What is the correct way to structure this if I want the whole lot to be easy to install and maintain? Is there a way to implement Plugin-like Observers in my Component or should I be building a separate Component and Plugin and then chaining the installers somehow? In the latter case how should I manage the code that they both share and ensure that if one is installed the other is too?