rework IndirectionCloud to be compatible with Oz migration to lxml

We are tightly integrated with Oz/TinMan for this plugin.  This includes
directly passing parsed XML objects into Oz functions.  The switch to lxml
in Oz broke some of these calls.  This patch fixes it.

This also changes the RPM packaging to force Oz >= 0.12.0 which is the
first Oz release version to use the lxml changes.
add ability to specify individual parameters on cmdline without JSON

This should allow most command line uses of the parameters to occur
without the user having to generate a JSON file to be passed in the
--parameters argument.

For example, a kickstart can now be specified to the base_image generation
like this:

imagefactory base_image --parameter-file install_script kickstart.ks input.tdl

Or icicle generation can be disabled like this:

imagefactory base_image --parameter generate_icicle 0 input.tdl

TODO: Have the plugins specify what parameters they accept and what the default
      values are.
add offline_icicle parameter to allow ICICLE generation without guest boot

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.
Merge pull request #328 from redhat-imaging/feature/offline-icicle

add offline_icicle parameter to allow ICICLE generation without guest bo...
Merge pull request #327 from redhat-imaging/bug/indirection_xml

rework IndirectionCloud to be compatible with Oz migration to lxml
Merge pull request #325 from redhat-imaging/feature/parameter_arguments

add ability to specify individual parameters on cmdline without JSON