Add custom fields support for vapp

This will enable us to create custom fields for vapp, which later could be accessed on the running vm:

http://blogs.vmware.com/vsphere/2012/06/leveraging-vapp-vm-custom-properties-in-vcloud-director.html
Should `user_configurable` be a boolean type rather than a string? This would make its intention clearer.