Add image probe function

Image file probe will be used in identify image file os info and
generate reasonable configuration for it.
This will be useful when import image and create a vm from it.

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>
Change doc and api specification

Add 'base' to 'disks' param to create template,
so that we can support create template from image.

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>
Change 'cdrom' to a optional param

Multiple files modification for change 'cdrom' to optional param.

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>
Fix: Prevent iso links filling in osinfo.py

As we already has distro json schema based template creation,
we need to stop filling iso links filling in osinfo.py.

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>
Create volume based on backing store image

Creating volume base on backing store so that we can create
vm from this cow volume. Also change volume xml generation method
to lxml.

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>
Update mockmodel of base img vm

Adding base img report in mockmodel

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>
Add tests for image based template

Add model tests for image based template, validated vm creation.

Signed-off-by: Royce Lv <lvroyce@linux.vnet.ibm.com>