Add IntegerType and some classes for validation

This patch adds the following classes for API parameter validation:

IntegerType
  * Value range validation (minimum, maximum)

StringType
  * String length validation (min_length, max_length)
  * Allowed string (pattern): e.g. should contain [a-zA-Z0-9_.- ] only.

IPv4AddressType
  * String format validation for IPv4

IPv6AddressType
  * String format validation for IPv6

UuidType
  * String format validation for UUID

Partially implements blueprint nova-api-validation-fw

Closes-Bug: 1245795
Change-Id: I5aead6c51b74464681e4ac41fa2a9c66c09adab2