Clarify the coinchooser code by removing the keys() indirection. Store TxInput objects in the bucket (avoid calling TxInput.from_coin_dict twice.
What is currently preventing CoinChooserBase.make_tx from taking a list of TxInput coins instead of coin dicts is the lack of a height field in TxInput.
I will fix this in a separate diff.