daemon: If /selinux exists in the guest, bind-mount /sys/fs/selinux to there.

Commit 72afcf450a78b7e58f65b4a7aaf94d71cd25fca5 was partially
incorrect.  If the guest userspace is expecting /selinux to exist,
then we should bind-mount /sys/fs/selinux from the appliance kernel
there.
daemon: Add a note about how 'mount --rbind' doesn't work.
run: Actually use timeout --foreground option (RHBZ#1025269).

The following commit managed to not actually add the --foreground
option to the timeout command, just test for it.  Add it this time.

  commit 681488877456b83f039dc518861f29ab4e1857f0
  Author: Richard W.M. Jones <rjones@redhat.com>
  Date:   Thu Dec 19 08:21:53 2013 +0000

    run: Use timeout --foreground option.

    If timeout doesn't have this option (RHEL 6) don't use timeout at all.

    Attempt to fix RHBZ#1025269.
src/Makefile.am: Reorder SOURCES into alphabetical order.
New API: disk-create for creating blank disks.

This is a wrapper around either 'qemu-img create' or calls to open,
truncate and posix_fallocate which litter and complicate existing
code.
lib: Use disk-create API instead of qemu-img/truncate inside the library.
fish: Use disk-create API to implement guestfish 'alloc' and 'sparse' commands.
examples: Update various examples to use new disk-create API.
builder: Use disk-create API instead of calling qemu-img create.
tests: Update miscellaneous tests to use disk-create API.

Instead of calling out to qemu-img / truncate.
rescue: Note that we're not using add-drive-scratch here, and maybe we should be.
sparsify: Use new disk-create API instead of calling qemu-img.

disk-create doesn't support the lazy_refcounts option.
virt-make-fs: Use disk-create API instead of calling qemu-img create.

Strictly speaking this reduces the number of formats that virt-make-fs
can output to, but it's likely that no one cares and if they do we can
add new formats in future.
daemon: Always pass -F option to mkfs.ntfs.

Otherwise it moans about:

  mkfs: ntfs: /dev/sda: /dev/sda is entire device, not just one partition.
  Refusing to make a filesystem here!

This has been happening for a while, so I don't know why we didn't
notice it before.  It even happens on RHEL 6.

A simple reproducer is:

  virt-make-fs -t ntfs any-tarball.tar.gz test.img
Rewrite virt-make-fs in C (originally Perl).

It should be very compatible with the Perl version.
tests: Test --label and other options in virt-make-fs.
Version 1.25.30.