Fix problem in set-input (and make its stdin/cliarg behaviour consistent with other sx commands)

Set-input is currently broken, or at least help message is invalid. The help message claims set-input takes 3 arguments, but sx-set-input actually takes only two.

Previously sx-set-input required signature on stdin. New behavior is for signature to be specified on command line, and transaction to be signed can be optionally specified on stdin if command line arg is single dash. This is consistent with behavior of other sx commands that take a transaction.

With this fix, sx-set-input takes 3 arguments instead of two, and the sx.py help set-input help message is correct.
The sx.py help message is also expanded to make it easier to follow the example.

This fixes issue https://github.com/spesmilo/sx/issues/21

$ ~/src/sx-git/src$ ./sx-set-input txfile.txt 2 otherfile.txt
Usage: set-input FILENAME N
thomas@debian:~/src/sx-git/src$ sx help set-input
Usage: sx set-input FILENAME INDEX PREVOUT_SCRIPT
Set a transaction input.
thomas@debian:~/src/sx-git/src$