self-tests for stbt.press_until_match

In the next commit I'm about to make some changes to
`press_until_match`, so it seemed a good idea to write some unit tests
that really test its behaviour under various conditions.
stbt.press_until_match: Default interval_secs & max_presses from stbt.conf

`press_until_match` is particularly sensitive to timing issues with
certain hardware configurations that introduce a lot of latency.
To account for different latencies in your particular setup (some
systems-under-test, infrared emitters, or video-capture devices might be
consistently slow to respond), the default value for the `interval_secs`
parameter to `stbt.press_until_match` is now configurable in stbt.conf.

Specifically, we have seen the following behaviour with a USB lirc-based
infrared emitter + the Hauppauge HDPVR USB video-capture device + stbt
running in a VM on an underpowered laptop:

1. The set-top box is displaying a menu or carousel; entry "A" is
   selected. The stbt script says:

       press_until_match("RIGHT", "menu-B.png")
       press("OK")

2. stbt presses "RIGHT".
3. stbt doesn't see the selection change in 3 seconds of video.
4. stbt presses "RIGHT".
5. In the very next frame, stbt sees the selection change to "B".
6. In the meantime, the set-top box changes the selection to "C",
   because of (4).
7. stbt presses "OK".
8. The set-top box opens menu entry "C", instead of "B" that we
   expected.

I'm not sure how much of the latency is introduced by lirc or the
infrared emitter, vs. the HDPVR, vs. stbt, vs. the system under test
itself. But the failures we have observed are all consistently a single
frame too late (the new menu selection is seen in the very next frame
after the last `press`; this is on a VM/laptop combination that only
manages < 2 frames per second).

The unit-test
`test_press_until_match_reads_interval_secs_from_config_file`
tests that `press_until_match` takes >=3s at the default configuration
(this should always be true, no matter what), and that it takes <3s when
configured with `interval_secs = 1`. Hopefully even on a heavily-loaded
PC (I'm looking at you, travis-ci.org continuous integration service),
2 seconds will be enough time (in that time `press_until_match` only
needs to process a single frame).
make doc: API docs should show default values from source config file

...not from the user's ~/.config/stbt/stbt.conf or $STBT_CONFIG_FILE.

315fb3a0 changed `press_until_match`'s default value for `interval_secs`
and `max_presses` to be read from the configuration file. This is done
at module load time, so the config file's value is reflected in the
output of `pydoc stbt.press_until_match`.

When the user runs `make doc`, the values should come from the stbt.conf
file distributed with stb-tester, not with whatever values happen to be
in the user's configuration file at that time.