hyperv: Retry after WMI query fails to find dev

During long stress runs the WMI query that is looking for
the iSCSI device number can incorrectly return no data.
If the query is retried the appropriate data can then be
obtained.

This commit adds a retry loop, calling
basevolumeutils.get_device_number_for_target to avoid this situation.
It also handles the case where the devices list returned in
get_device_number_for_target is empty.  The retry loop is
implemented with new mounted_disk_query_retry_count and
mounted_disk_query_retry_interval configuration options.

Unit tests have been added to check the good and bad paths for
get_mounted_disk_from_lun.

DocImpact
Closes-bug: 1247901
Change-Id: I082c4b1694efcd20cce65293cd330b7a0cf7d470
Increase the default retry for iscsi connects

We've had a number of gating failures resulting from
attach failures.  Looking through past gate logs it
seems we've had a pretty wide variance in how long it
takes the actual iscsi attach and mount to complete
before being available in dev/disk-by-id.

This patch simply bumps the retry count from 3 to 5,
the result will be going from a max of 14 seconds to wait
for attach to 55 seconds total before failing.

Change-Id: Ib46da71c964da977471cc6635adc5d92ff3beb9c
Closes-Bug: 1270608
Merge "Increase the default retry for iscsi connects"
Merge "hyperv: Retry after WMI query fails to find dev"