Merge pull request #116 from maksimov/develop

getInstance() methods must be public
Added patch by cafed00d to the develop branch for supporting volume Ids listed with the VM.
Altered the signature for getProviderVolumeIds() so it can fetch in clouds that may not provider the proper listing. This is also backwards compatible even when not yet implemented for a given cloud.
Added support for DNS resolution of public IP addresses on-demand to minimize the need to do it during unrelated processing
Added support for tagging subnets
Added in default behavior into the abstract base