Add API schema for v2.1/v3 scheduler_hints extension

By defining the API schema, it is possible to separate the validation
code from the API method. The API method can be more simple.
In addition, a response of API validation error can be consistent for
the whole Nova API.

Partially implements blueprint v2-on-v3-api

Change-Id: I7e54db52e55727f090128cc393a28043e1085636
Share unit test case for server_external_events api

This patch makes v2.1 and v2 share same unit test cases

Partially implements blueprint v2-on-v3-api
Change-Id: I4bcc30adb7289313d0cf82d70a80712a6c2621e8
Merge "Share unit test case for server_external_events api"