Added optional flag to specify output index in unspent input transaction.

My justification is that the input transaction used may have been created by any Bitcoin implementation, including those other than hellobitcoin, and may have had multiple outputs. This change adds an optional flag to let users generate transactions specify UTXOs that are not at the first index of the input transaction.  Defaults to 0 (first index), so no added complexity is created for the user here if they want to ignore this flag.

New flag documented in README.

Hope this is helpful :)
Soroush