TWC changes

Changes:

- Support for Instance Profile
- Modify firewall on instance
- Source/target labels for firewalls
- Label support for instances (differs from tags)
- Root Volume flag for VolumeAttachment
- Tag support for subnets, internet gateways, and route tables
- Support for VM Status
- Added futures to listIpPool
- Updated exception handling
- Support for forcefully deleting auto scaling group
- Abstracted VolumeAttachment away from VmLaunchOptions so it can be used elsewhere
- Added LaunchConfigurationCreateOptions
- Support for Additional Launch Configuration options - AssociatePublicIPAddress, IOOptimized, virtualMachineId, and VolumeAttachments
- Added Utilization Property for PrePayment
- Added filtering by instance status and state