Make rest_client.wait_for_resource_deletion timeout error more specific

Currently the timeout error message just says 'Failed to delete resource
within the required time' and includes the test class/test case, but
when we're seeing all volume-related tests racing with a delete hang, we
can't fingerprint an elastic-recheck query on the various test
class/test case names, and there aren't errors in the cinder logs.

The best thing we have to fingerprint is the timeout message, but we
need it to be more specific to the type of resource rather than any
resource type that might have timed out during a delete operation.

This is similar to the is_resource_deleted method in the various rest
clients in that the concrete implementations of the base class return
their specific type so we can use that in the timeout message.

Closes-Bug: #1380712

Change-Id: I36b49c59daa95219c4377d1e207ea4a0c8cf8782
Merge "Make rest_client.wait_for_resource_deletion timeout error more specific"