Make test suite use native ruby + rjb instead of JRuby etc.
Switch from systemtimer to Ruby's timeout module in test suite.

systemtimer was relevant in Ruby < 1.9 (and is only available in for
such versions of Ruby in Debian).
Take screenshots through Sikuli instead.

This is much more reliable, and has fewer dependencies.
Update test suite setup docs.
Drop some unnecessary dependency checks.
Merge branch 'devel' into test/rjb-migration
Wheezy's cucumber is good enough for the test suite.
Fix buggy "persistence is not enabled" step.

It grep:ed for the wrong device (DM mappings are involved) so it would
pass even if persistence was disabled. Now this check uses the
persistence state file created by Tails Greeter in a way similar to
how tails-persistence-setup determines whether persistence is in use.
Also, this step's positive version now use the same approach, and both
steps were renamed to "is enabled/disabled" for greater consistency.

The old code for this step, which checks whether all persistent
directories have been successfully mounted, is put into a step of its
own, since it's still something we should test.
Add a logging shell library.
Add a shell library for hardware related stuff.
Add shell library for checking Tails Greeter settings.
Add helper script useful for MAC spoofing.

It has options for taking into account the setting selected in Tails
Greeter.
Hook MAC spoofing to an udev rule.

This way it doesn't matter if devices are added before or after MAC
spoofing has been enabled or disabled in Tails Greeter; they will get
the correct setting no matter what (provided we unspoof devices added
after T-G if MAC spoofing is disabled).
Add missing quotes.
Clarify comment.
Set -e explicitly. Also -u as bonus.

Settings in the shebang are ignored if scripts invoked by an explicit
shell.
Be more careful with whitespaces in macchanger output.

One of the Debian patches actually changes this, so let's stay
on the safe side.
Merge remote-tracking branch 'origin/devel' into feature/spoof-mac
Remove unused function from shell library.

It wasn't very robust any way, so let's implement it properly in the
future if we need it.
Add monitor for detecting network blockage.

Since we enable MAC spoofing by default, users may experience network
connection issues on networks emplying MAC address blocking.
Unfortunately NetworkManager does not seem to offer any nice hook into
its error-handling, so when MAC spoofing is enabled we run (from T-G)
this crufty script which analyzes NM's log and tries to identify
connection failures that is unrelated to more common errors, like
entering an incorrect WPA passphrase. At the moment the script only
handles wifi networks, not wired, WAN, etc.