[Delivers #47720523] Add comments to the CloudBlockStorageProviders and updated a few of the integration tests

**Summary**
- Added /// comments to each method in the provider as well as to each public constructor.
- Updated Volume size validator in CloudBlockStorageValidator to throw InvalidVolumeSizeException versus ArgumentException
- Updated tests and WaitFor{X}State methods

**Testing**
Ran full integration tests with changes incorporated.  
The full ordered test includes the following steps:
- Cleans up the environment
- Creates a volume
- Checks that the volume is there
- Creates a snapshot of the volume
- Checks that the snapshot is there
- Deletes the snapshot
- Verifies the snapshot is actually deleted [if this fails we cannot delete the volume]
- Deletes the volume
- Verifies the volume is actually deleted.