extra/vm: Cleanup: `expect` isn't required for `stbt power`

But it is required for the selftests.
extra/vm: Remove workaround for stbt-tv pre-0.15
debian & fedora packages: Install lsof

Used by `stbt batch run` since stb-tester 0.15 to provide additional
information when a Blackmagic video-capture card appears to have frozen.

This may well be installed already as a dependency of another package,
but it doesn't hurt to list it explicitly.
extra/vm: Update to Ubuntu 14.04 for GStreamer 1 support

Ubuntu 12.04 doesn't have GStreamer 1 packages, so this didn't work at
all since a071a9cc (Port to GStreamer 1.0). Now that Ubuntu 14.04
LTS (Long-Term Support) is out, let's use it.

Vagrant themselves don't provide an Ubuntu 14.04 image, so I'm using one
provided by Ubuntu. There doesn't seem to be a stable link to builds
more than a few days old, so I'm using the current (nightly) build,
which should hopefully be ok now that 14.04 is released & officially
stable. An alternative would be to use the images by
phusionpassenger.com (a web-server / application-server outfit) but they
don't have a 32-bit image and I didn't want to change too many variables
at once. See the list of available images at http://www.vagrantbox.es/

Also install the right version of stb-tester and gstreamer-completion
for GStreamer 1.
extra/vm: Install stb-tester from PPA

Instead of building it from source. This results in a more standardised
configuration, rather than whatever version of the stb-tester source
code the user happened to have checked out. It also gives us one more
way of testing the binary package for Ubuntu.

We still mount the stb-tester source folder in case the user is an
stb-tester developer who wants to run the selftests, install a
development version, etc.  For the same reason we still install
stb-tester's dev dependencies in setup.sh; we don't need to list
the run-time dependencies because they will be installed by
`apt-get install stb-tester`.
Merge pull request #158 from drothlis/vm-1404lts

Update VM scripts in `extra/vm/` to Ubuntu 14.04
Display teardown: Fix race condition in flushing logic

fadfe6e3 added flushing to Display teardown to fix long delays when using
non-live sources.  It also introduced a test that graceful shutdown would
work.  Unfortunately the test revealed that the fix was racy.  This was
causing intermittant failures on Travis and could be readily reproduced
on a VM.

The race was between the EOS event and the pipeline getting started up
again after FLUSH_STOP.  After receiving FLUSH_STOP the videotestsrc
element would start sending events and buffers again.  This would fill up
the queues and then the EOS event would get stuck behind the buffers in
the queues, just like before the fix in fadfe6e3.  This commit fixes this
by sending EOS before FLUSH_STOP.  This has the effect that once the
source receives FLUSH_STOP it will immediately send out the EOS without
sending any SEGMENT events or buffers.

Originally I'd been reticent to do it this way as my understanding of
FLUSH events was that they would cause any events between FLUSH_START
and FLUSH_STOP to be disregarded.  This is true, but GstBaseSrc is
intelligent enough to store them up for later transmission after
FLUSH_STOP.  It terms this [`pending_eos`][1].

[1]: http://cgit.freedesktop.org/gstreamer/gstreamer/tree/libs/gst/base/gstbasesrc.c?id=1.2.4#n2381