How would I approach editing/reloading/printing to console a multi-file addon? 

There's a (someone else's) multi-file addon with a complex structure of libraries and classes with a bug in a particular class and I'd like to try to fix it. However I never made an addon with several separated files and I don't understand how to reload it properly. At the moment I edit the original `.py` file and restart Blender which seems like a terrible workflow.