Implemented test_cloud_instance_discovery.py

1. Added cfme/test/cloud/test_cloud_instance_discovery.py, which is based on cfme/tests/infrastructure/test_vm_discovery.py

2. Added _load_details() to the Provider class in cfme/cloud/provider.py

3. Added a try/catch around call to is_vm_suspended() in Vm.delete_from_provider() for cases where the provider doesn't support returning Vm status (EC2)

4. Paginator.find() now raises an error if the element is not found

5. Misc. small bug fixes and improvements
I believe this implementation will still delete the vm (which is called on the next line), it simply ensures that it doesn't fail in cases where the provider doesn't support the ability to return whether the VM is suspended (which is the case for EC2). If there is another exception (ie. a problem with deleting the vm from the provider), it should still raise an error.