[electrum] properly handle point at infinity and point not on curve
Summary:
Raise a custom error for points not on the curve. Support a special *point a inifinity* value for ECPubkey (will be needed in the next diff for Cash Fusion code)
This is a backport of https://github.com/spesmilo/electrum/commit/59c1d03f018026ac301c4e74facfc64da8ae4708
Additional tests from:
- electrumabc_plugins/fusion/tests/test_pedersen.py
Depends on D16676
Test Plan: python test_runner.py
Reviewers: #bitcoin_abc, bytesofman
Reviewed By: #bitcoin_abc, bytesofman
Subscribers: bytesofman
Differential Revision: https://reviews.bitcoinabc.org/D16681