pass id or name of resources in scenario config

* added types.set(...) decorator to apply transform to scenario args
* abstract ResourceType implements generic transform logic
* support use of flavor name through FlavorResourceType
* support use of image name through ImageResourceType
* transform is applied during validation and during preprocessing
  which follows validation
* modified all sample scenarios to use flavor-by-name and
  image-by-name
* passing resource as simple key-value pair will no longer work,
  and instead resource must be object containig id, name, or regex
* unit tests for image and flavor transformations

Change-Id: If35959ece8f247b5376f5ff91ae3d3e008a84447