test-in-vagrant: run commands on the vm in $HOME.

Instead of assuming ssh into the virtual machine places me into my home
directory, explicitly reference $HOME in the commands, to make this an
absolute path. This still works because the $HOME parameter is expanded
once we are *inside* the VM so things will reference the correct
location, while being more compatible with what test-in-lxc (which will
expand $HOME to the invoking user's home, rather than that of the
container's user) does. Note the test-in-lxc behavior is a bit strange
but consistent and it works as long as --keep-env is used.
test-in-lxc.sh: Added script to perform per-commit testing with LXC.

This mimics test-in-vagrant.sh, but using an LXC container instead of a
Vagrant/Virtualbox virtual machine.

The tests run once the vm/container is up are identical to the ones run
by test-in-vagrant, they're only run using a different command. A good
to-do would be to extract that "inner" set of tests so it can be reused
independent of the container/VM used.

LXC is not much faster than Vagrant (maybe 50%-100% as fast), but a crucial
advantage is that it should be lighter on resources and run on a cloud
machine instance without nested hardware virtualization support.

A disadvantage is that LXC commands need to be run with sudo, which
requires a bit more configuration than Vagrant.