add offline_icicle parameter to allow ICICLE generation without guest bo...

...ot

We have recently seen use cases that want ICICLE but generate a non-bootable
disk image, for example with Docker base images.

When the new offline_icicle parameter is present and set to True Factory will
attempt to generate ICICLE by using libguestfs sh() calls instead of the normal
Oz technique of booting the full guest and ssh-ing in.

Note that this has some of the drawbacks of chroot based approaches.  The
ICICLE generation commands are run in the libguestfs appliance, which uses the
host kernel.