engine: CloudInit custom script section

Custom Script:
User can add arbitrary CloudInit section in additional to the defaults
(such as hostname, timezone etc)
User can add files and other non supported sections.
This will add two new files:

write_files:
-   content: |
        # some file content
    path: /root/myfile
-   encoding: b64
    content: CiMgVGhpcyBmaWxlIGNvbnRyb2xzIHRoZSBzdGF0ZSBvZiBTRUxpbnV4...
    owner: root:root
    path: /etc/sysconfig/selinux
    permissions: '0644'

Bug-Url: https://bugzilla.redhat.com/1051041
Change-Id: Ibbe4107401cc5add22a519f6a18bad96f1055615
Signed-off-by: Shahar Havivi <shaharh@redhat.com>