[electrum] finish removing main_window references in ContactList
Summary:
After this diff, the ContactList class no longer needs to know anything about its parent's API. The ElectrumWindow class now reacts to signals, and is in charge of connecting and disconnecting all signals.
Wrap all the contact_list initialization in an ElectrumWindow.create_contacts_tab method, like for other tabs.
Depends on D14538
Test Plan:
In the contacts tab, try all the context menu actions:
- add contact (try with a valid address and an invalid addresse to trigger an error dialog)
- export and import contacts (try also importing an invalid contacts file)
- with one or multiple contacts selected, try "Copy Label" and check it is in the clipboard
- with one or multiple contacts selected, try "Pay to", and check all the recipients are listed in the Send tab
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Differential Revision: https://reviews.bitcoinabc.org/D14539