[secp256k1] Backport "Schnorrsig API overhaul"
Summary:
Bitcoin Core changed the C API for BIP340 Schnorr signatures within secp256k1. We don't use them in Bitcoin ABC, so thus far this backport was not needed.
This is a backport of secp256k1#844.
Now we do need this backport mostly for secp256k1_schnorrsig_sign_custom for porting rust-secp256k1 to the secp256k1 library of this repo.
Depends on D16957.
Test Plan: ninja check-secp256k1
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Subscribers: Fabien
Differential Revision: https://reviews.bitcoinabc.org/D16958