[avalanche] Pass a CKey to the proof builder
The proof builder currently takes a CPubKey because it only needs to move it into the proof it is building.
In order to improve the proof format so that it is possible to update some of it's parameters (and mostly the list of stakes) without having the stakers to got through the signing process again, the stakes signature will be updated to no longer sign every parameter of the proof. This also mean that we need to the proof owner to sign these parameters to prevent anybody from updating any proof. Since we need the private key for the signature, this diff supplies it to the proof builder instead of the public key. As a consequence the buildavalancheproof RPC needs to be updated as well.
This diff is a preliminary diff and does not update the proof format.
Depends on D10077.
ninja all check-all
Reviewers: #bitcoin_abc, deadalnix
Reviewed By: #bitcoin_abc, deadalnix
Maniphest Tasks: T1676
Differential Revision: https://reviews.bitcoinabc.org/D10092