stbt: Add SamsungTCPRemote

SamsungTCPRemote controls certain Samsung Smart TVs according to the
protocol reverse engineered by Mike Szymaniak[1].  It works with my
Samsung UE32F5370.

[1]: http://sc0ty.pl/2012/02/samsung-tv-network-remote-control-protocol/
Merge pull request #106 from wmanley/samsung-remote

stbt: Add SamsungTCPRemote
stbt.py: match debug visualisation shows ROI found by first pass

The "source_with_roi.png" debug image generated by `stbt run -vv` or
`stbt templatematch -v` didn't actually show the ROI (region of
interest) identified by the first pass of the image-matching algorithm.
Now it does.
stbt run: Pass optional arguments after script name to script

Previously if you were to run:

    stbt run test.py --food=haloumi

stbt run would fail not recognising the optional argument `--food`.  This
commit fixes this issue.  Now all arguments that come after the test name,
optional or not, are passed to the test script.  While I believe this is
correct behaviour this change is backward incompatible.  Before if you
were to run

    stbt run test.py --source-pipeline=videotestsrc

stbt would use the source pipeline specified.  Now the source-pipeline is
passed through as an argument to the test script.  I don't think this
will be a problem in practice but it's still worth mentioning in the
release notes.

Fixes #108
test_that_frames_doesnt_deadlock: Remove harmless but confusing error message

Although this self-test passes, running it with `run-tests.sh -v` showed
the following output:

    test_that_frames_doesnt_deadlock... OK
    Showing '/tmp/stb-tester.roF/log':
    ./test-stbt-py.sh: line 129: frames: command not found
    ./test-stbt-py.sh: line 129: frames: command not found

Since the offending shell command's (lack of) output ended up inside a
Python comment, it didn't affect the correctness of the test; but it was
certainly wrong and confusing.

Thanks to Lewis Haley for spotting this.