Add ability to use script outputs in mktx()

Add the ability to use an output of the form `{'script' : ..., 'value' : ...}` instead of the currently supported format `{'address' : ..., 'value' : ...}` as an argument to the function `mktx()`. This will make it easier to handle transactions with metadata outputs like for instance stealth transactions.

Also add unit test.