I think documentation that just described how the whole process works would be enough - something along the lines of "Subclasses of this class need to reimplement at least foo, bar, baz. `__init__` does not have to do anything. `queue_downloads` will be called at one point and should do this, this and that. Its return value must be FINISHED, if [...] or WAIT, if [...]". Otherwise one needs to read code in this file, coverart.py and probably one of the existing providers to understand what's going on (at least I had to).