Added a new method cloneable? to check if VMs/Templates can be cloned or not

issue #253
https://bugzilla.redhat.com/show_bug.cgi?id=1122712
@chessbyte By using ```.try``` we can pretty much eliminate the checks that we would normally do with ```.any?``` or ```.all?```. 
If  assuming ```VmOrTemplate.where(:id => id)``` returns a ```nil```, then ```.try``` would first check for the existence of the object before calling ```cloneable?``` 
Also, since we are querying on the ```id``` in the ```vms``` table, ```.where``` will not return > 1 row.

@gmcculloug, would that be correct?