builder: Add --update option to update template/core packages.
launch: libvirt: Don't default to using NULL for libvirt connection URI (RHBZ#1045033).

NULL means that libvirt gets to guess what connection URI we meant.
Currently it guesses qemu:///session for non-root and qemu:///system
for root.  Except if LIBVIRT_DEFAULT_URI is set in which case this is
used even if it's not appropriate.  Except if Xen is installed in
which case it guesses xen:/// which is not helpful at all.

Instead use qemu:///session (or qemu:///system for root -- that's
likely to be wrong, but we can't help that).

If the user really wants to use NULL and let libvirt guess, then they
can now specify the libvirt:null backend.

See:

https://bugzilla.redhat.com/show_bug.cgi?id=1045033
https://bugzilla.redhat.com/show_bug.cgi?id=886915

A good way to test this is:

LIBVIRT_DEFAULT_URI=iambroken libguestfs-test-tool

The libguestfs libvirt backend should (after this commit) ignore
LIBVIRT_DEFAULT_URI.  However other parts of libguestfs will still use
it, eg. guestfs_add_drive_opts, guestfish '-d' option.
launch: libvirt: Clearer message when libvirt screws up.

Instead of:

libguestfs: error: could not create appliance through libvirt.
Try using the direct backend to run qemu directly without libvirt,
by setting the LIBGUESTFS_BACKEND=direct environment variable.: internal error: process exited while connecting to monitor: qemu-system-x86_64: -drive file=/tmp/libguestfs3RnJSd/snapshot2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=writeback: could not open disk image /tmp/libguestfs3RnJSd/snapshot2: Could not open backing file: Could not open '/home/lsm5/fimagebuilder/fedora-imagebuilder/fedora-imagebuilder-sda.qcow2': Permission denied

it will now say:

libguestfs: error: could not create appliance through libvirt.

Try running qemu directly without libvirt using this environment variable:
export LIBGUESTFS_BACKEND=direct

Original error from libvirt: internal error: process exited while connecting to monitor: qemu-system-x86_64: -drive file=/tmp/libguestfs3RnJSd/snapshot2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=writeback: could not open disk image /tmp/libguestfs3RnJSd/snapshot2: Could not open backing file: Could not open '/home/lsm5/fimagebuilder/fedora-imagebuilder/fedora-imagebuilder-sda.qcow2': Permission denied