stbt screenshot: Optional `filename` argument

So that users can call `stbt screenshot` with a custom filename to avoid
overwriting previous screenshots.
stbt screenshot: Remove unnecessary `wait_for_motion` and `sleep`

This isn't needed since ac3b7a04.
stbt screenshot: Don't save a video

`stbt screenshot` calls `stbt run`, so if the user had set `save_video`
in their `stbt.conf` file, `stbt screenshot` was saving a (very short)
video to disk.
stbt {screenshot,templatematch,tv}: Cleanup: Remove STBT_LIBEXEC variable

Storing this value in a variable isn't necessary because it is only used
once in each script. The variable name was slightly misleading because
when running `stbt-screenshot` (etc) from the source directory the
variable's value is the source directory, not `$prefix/libexec`; and the
variable capitalisation was inconsistent with the rest of the code.

Note that the purpose of using `dirname "$0"` is so that when we run
`stbt-screenshot` from the unit tests, it runs `stbt-run` (from the
source directory) instead of running the *installed* version of `stbt`.
See f9e59d93.