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.
Yeah, I kind of don't want a pattern that forces me to make plugins be services.  That works awesome at the biggest scales, and unnecessarily complicates small scales.

I feel like we could substitute "host:port" for Service and nothing else would need to change.  Or we could turn Path+Service into URL and nothing else would need to change.  I don't see services as fundamental to plugins or vice versa.