Validate project with Keystone

Today there is no functionality to validate the project that
is consumed by Nova.  One reason for the lack of such
functionality is performance, where validating to external
services can cause poor performance.  However, such functionality
is needed in cases where the user passes in the project ID or
name (e.g. quota management), so that the correct quota is set.
Such functionality is also needed where the user wants to grant a
project access to a flavor.

This blueprint proposes a way to validate a specified project
with Keystone.  This blueprint is only intented for cases
where the API calls are done on a very infrequent basis.  More
specifically, it is only meant to be used for validating
project ID in quota management (i.e. quota-defaults, quota-show,
quota-update) and in flavor management (i.e. flavor-access-add,
flavor-access-list).  A separate blueprint is required for any
functionality that is outside of quota and flavor management.

bp validate-project-with-keystone

Change-Id: I70eac05145b3fadfb388484cf14cb07586651c61
Merge "Validate project with Keystone"