Tests: Allow multiple machine 'flavors'.

So that not all machines that are used in a test case need to be
identical.

* File names have been changed to include the flavor.
* Most scripts take a "--flavor" argument.
* Setup instructions are factored out of testvm into their own little
  scripts.
Tests: Add 'snapshot' option to vm-run.

Running a machine in snapshot mode is useful for debugging.
Tests: Support fixed MAC for a test machine flavor.
Tests: Test against a real FreeIPA instance.
Tests: Hard-code deps in cockpit.setup, not in PREPARE.

So that vm-create becomes less error-prone to use.
Tests: Work with qcow2 images instead of tarballs.

* vm-pack and vm-unpack are replaced by vm-save and vm-reset.
* If necessary, a new image is created based on the master backing
  image when a machine is started.
Tests: Wait for service to be listed before checking state.