Inputs and outputs registered in a dict()

Working on #111 (closed) and thinking about outputs/unlock conditions.

If we keep managing outputAddresses and tx_amounts as separated lists, I think we'll have to deal with a real mess as we develop features. Even more when we will deal with multiple issuers and unlock conditions (I have projects on both issuers and conditions ;-) )

To solve this for 0.9 or 0.10, I think we could store values in a dict().

output1:{  
output : <pubkey>  
amount : <amount>  
conditions : <conditions>  
base : <base>  
}

(I don't know all the necessairy informations for inputs)

input1:{  
blockhash : XXX  
base : XXX  
amount : XXX  
unlock : password  
sig : key   
...  
}

This would be a big change in code structure, but I think it could be worth it.

Edited by Moul
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information