Define ComponentPlugin API type

Just writing down how I think plugins should get registered with the system. Was thinking it'd be nice to do the event thing as a plugin.
Objective of this doc?  It's not clear if this is documenting current state, aspirational, or something else..