[electrum] move-only: move helper functions to avoid libsecp dependency
Summary:
This moves helper classes and helper functions to other modules to avoid introducing a dependency on cryptography code for the get_merkle_root.py script. This means we can continue using the script without unnecessarily compiling libsecp256k1.
Now interface.py no longer depends on libsecp, and a helper function was moved from network.py to networks.py because the latter also does not depend on libsecp.
Test Plan:
python test_runner.py
With libsecp256k1.so.0 missing:
scripts/get_merkle_root.py
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Differential Revision: https://reviews.bitcoinabc.org/D16833