Generalized progress sender so it can be used for any message type. Added ability to set complete so that repos show 100% if they were already downloaded.