appliance: add dhcpcd and gptfdisk on Archlinux

dhcpcd replaces the non-existing dhclient.
appliance: add dhcp-client on Mageia

dhcp-client replaces the non-existing dhclient.
v2v: Increase readahead window for vCenter transfers (RHBZ#1151033).
v2v: Rename some modules to remove lib_ prefix.

v2v/lib_ovf.ml -> v2v/OVF.ml
v2v/lib_ovf.mli -> v2v/OVF.mli
v2v/lib_linux.ml -> v2v/linux.ml
v2v/lib_linux.mli -> v2v/linux.mli
v2v/lib_esx.ml -> v2v/vCenter.ml
v2v/lib_esx.mli -> v2v/vCenter.mli
v2v/lib_xen.ml -> v2v/xen.ml
v2v/lib_xen.mli -> v2v/xen.mli
FAQ: Add a section on debugging libvirtd.
appliance: remove few duplicates from Mageia's list
Move JSON to mllib

Move the simple OCaml JSON writer to mllib, so that can be enhanced and
used also outside v2v.
mllib: improve JSON: more types, indented output style

Improve the homebrew JSON writer:
- add more types (including also nested dictionaries and lists)
- format in a compact way (single line), or indented (multilines)
builder: use the JSON module

Switch to the JSON OCaml module for JSON output.

The resulting output is the same, except from an indentation level more
within lists.
Version 1.27.62.
edit: fix --format documentation (RHBZ#1151738).

Use only --format=FMT as a way to specify a format, as the version
without the equal sign will not work for that.
v2v: --root ask: Number the guests in the list correctly.

Thanks: Junqin Zhou
v2v: Add an 'info' function for info messages, and use it for virtio message.
v2v: When choosing a root from several, print an info message.
v2v: Add 'exit' choice to --root ask.

If the user does ^C then this leaves temporary overlay files around
(possibly a bug?).  Offer an 'exit' choice to the user which exits
cleanly.

The new message looks like this:

  Dual- or multi-boot operating system detected.  Choose the root filesystem
  that contains the main operating system from the list below:

   [1] /dev/sda3 (Fedora release 20 (Heisenbug))
   [2] /dev/sdb3

  Enter a number between 1 and 2, or 'exit': exit
bash: add virt-log completion entry (RHBZ#1151766).

Thanks: Lingfei Kong
v2v: -i ova: Mainly whitespace and formatting changes.

Mainly tidy up the indentation and comments to match the "house
style".  No significant functional change.
v2v: -i ova: Preserve the order of disks/removable/NICs from the source OVF.

Because we built the lists up backwards, we ought to reverse them
before passing them out of the module.
v2v: -i ova: Try hard to preserve the order of floppies and CDROMs from the original OVF.

Remove the common 'add_resource' function.

Duplicate that function into code for adding disks, and separate code
for adding removables (floppies & CDROMs).

The removables code should look for all removable devices
(ResourceType 14, 15, 16) in a single query, so that the order doesn't
depend on the order in which we do the queries.
tests: v2v: Check -i ova generates the same XML each time.