Add method umockdev_testbed_load_evemu_events()

Replay an evemu events file into an emulated evdev device. These are platform
independent and thus more portable than a script record.

See https://github.com/bentiss/evemu/blob/master/README.md for the format
documentation.

Part of https://github.com/martinpitt/umockdev/issues/5
umockdev_testbed_load_evemu_events(): Support comments
Add -e/--evemu-events=devname=eventsfilename option to umockdev-run

This loads an evemu .events file.

https://github.com/martinpitt/umockdev/issues/5
Only send a "add" uevent from add_device if running under preload

Add umockdev_in_mock_environment(). This function returns whether or not the
current process is running in a umockdev testbed environment.

Use this in add_device(), to fix error messages when loading devices from the
umockdev-run commandline.

Thanks to Chris Halse Rogers for his original patch!
preload: Move to real signature of ioctl()

Make ioctl() a varargs function to avoid collision with the standard include
files, and pick the first argument.
Fix detection of mismatching devices when recording into an existing file

Opening the existing file with mode "a" wouldn't allow us to read anything, so
open it with "a+". The read position defaults to the start of the file, so for
ftell() to work we need to seek to the end first. Fix the ignoring of the
first non-comment character and the string comparison.
preload, script_start_record(): Rework parsing of existing script device

This avoids the error prone ungetc() and switches to line-based parsing. This
also simplifies supporting other output formats in the future.
Add recording of evemu .events files

Introduce the concept of a "script format" to the preload, and support the
default (umockdev) and evemu's event formats.

Add -e/--evemu-events=devname=eventsfilename option to umockdev-record, to
record reads from an evdev device into an evemu .events file.

https://github.com/martinpitt/umockdev/issues/5
umockdev_testbed_load_evemu_events(): Consider the recorded device as default

Just like with ioctls and scripts, allow "dev" to be NULL and use the recorded
device in that case.
README.rst: Add evemu documentation and example
Fix vala t_detects_not_running_in_testbed() test case

buf is not a terminated string. Just compare the single char that we are
actually reading.
release 0.8
Add a (broken) test that evemu-replay can roundtrip with evemu-record