add Schnorr signing module to test_framework [alternative implementation]
add Schnorr signing module to test_framework [alternative implementation]

Summary:
This adds an independent Schnorr implementation like the functional test
framework's key.py. No new dependencies as it also runs on OpenSSL.

This will be needed so that we can produce real transaction signatures for
activation testing.

Includes a basic self-test if you execute the file, to make sure it
produces identical sigs as the implementation in libsecp256k1.

Alternative to D2487

Test Plan: includes self-test if you run the python file

Reviewers: #bitcoin_abc, deadalnix

Reviewed By: #bitcoin_abc, deadalnix

Subscribers: teamcity, schancel

Maniphest Tasks: T527

Differential Revision: https://reviews.bitcoinabc.org/D2501

Justaphf/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,Justaphf/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,Justaphf/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited,BitcoinUnlimited/BitcoinUnlimited