Yes we still need deployments:

This is how the PersistentVMRole represented in IaaS.

Hosted Service ==> Production Deployment ==>  PersistentVMRole

VM reside in production deployment and deployment reside in Hosted service

Here Hosted Service (cloud service) is the DNS name that will be unique. But user can have  PersistentVMRole' with same name under different cloud services.

So access the properties of a VM we need name of hosted service and name of PersistentVMRole.

http://msdn.microsoft.com/en-us/library/windowsazure/jj157206.aspx 

The only input we have from user is the name of the VM, to query RDFE for the the properties of a VM
by VM Name first we need to collect production deployment under all hosted services. Then loop through
this collection of deployments to find a PersistentVMRole with the given name.

If we found two PersistentVMRole with same name under different hosted service then we show message 
'VM name is not unique', in this case user has to use the option "--dns-name" to let us know which
hosted service to select.