Add-on infrastructure

So I was looking through the source and I realized that I really like the add-on infrastructure. It seems like it’d very useful to other Node projects who want functionality for add-ons. Is this add-on system based on a more general library? Or is there interest in moving it into a more general library?

Thanks!

It’s already somewhat modular, but I’m open to hearing ways we could improve. Right now, we have the following: