Use a chain of callbacks instead of a single one in TransferStatusPtr

This allows reusing it in AddonManager and not bothering with creating
it's own, but basically empty InstallStatus.
Removed AddonManager::InstallRequest, the data can be hold in the lambda capture instead