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
@AparnaKarve I would suggest using let blocks here to define your different VMs so they are only initialized for tests where they are used.  I also structured the tests a little differently and used the convention ```#cloneable?``` for instance method tests and ```.cloneable?``` for the class method tests.  The class methods still need to be filled in.  
This is just want I was thinking, maybe @eclarizio would have a better suggestion for structuring the tests.

```ruby
  context "is cloneable" do
    let(:vm_vmware)       { FactoryGirl.build(:vm_vmware) }
    let(:vm_redhat)       { FactoryGirl.build(:vm_redhat) }
    let(:vm_microsoft)    { FactoryGirl.build(:vm_microsoft) }
    let(:template_redhat) { FactoryGirl.build(:template_redhat) }
    let(:template_vmware) { FactoryGirl.build(:template_vmware) }

    context "#cloneable?" do
      it "true" do
        expect(vm_vmware.cloneable?).to eq(true)
        expect(vm_redhat.cloneable?).to eq(true)
        expect(template_vmware.cloneable?).to eq(true)
      end

      it "false" do
        expect(vm_microsoft.cloneable?).to eq(false)
        expect(template_redhat.cloneable?).to eq(false)
      end
    end

    context ".cloneable?" do
      it "true/true"
      it "true/false"
      it "false/false"
    end
  end
```