Enable Canisters to Hold ICP

We have made the preparatory proposal 30232. This proposal does not enable canisters to transfer ICP. The proposal tweaks the ledger to improve safety. In this proposal the ledger will be upgraded so that only whitelisted canisters (all residing on the NNS subnet) can receive transfer notifications from the ledger. This is to ensure the ledger will not get into a situation where it is waiting forever for a notify-reply from an outside canister. We are also updating the archiving mechanism to keep blocks in the ledger until the archiving canister has confirmed receipt. Finally, we are updating some dependencies in the ledger canister. The main proposal to enable canisters to transfer ICP will follow later.