Input selection algorithm

Rebased to vp-withdrawal.

Note I had to make some minor changes to make the test run again.

Also the createInputs and createInputsStore needs to be cleaned up. They are both taking a store right now and especially the createInputsStore name is misleading.
Changed to isEligible. I think the signature of the function makes it clear what it's about. Regarding the 'is' question, I did a quick grep on the btc* repos and found quite a few functions using that convention.