coraid: allow setting default repository

Currently, the Coraid driver requires storing Storage Repository
name in volume type key named 'coraid_repository' or different key name
if a value of the 'coraid_repository_key' option changed in the cinder
configuration file.

In case of creating a volume without volume type associated or creating
a volume with volume type that doesn't have an appropriate key with
the repository name, volume creation fails.

That is an inconvenient behaviour, especially in case of using that with
Tempest that creates new volume types but obviously doesn't know
that it should add keys with the repository name.

In order to fix that, introduce a 'coraid_default_repository' config
option that allows to set a default repository to use if one is not
specified in the volume type key.

In case if neither volume type nor config file provide a repository
name, throw CoraidException with description of the problem.

DocImpact

Change-Id: Ib205553cdee0af0036a774f6926433f4452ec023
Merge "coraid: allow setting default repository"