Add Flavor object

This patch adds the Flavor object and associated tests. It looks
mostly like the corresponding DB object, but without a nullable
flavorid attribute (which isn't actually optional). It also
makes a loadable 'projects' field with the associated project IDs
in it to avoid another object/interface for this simple thing.

Related to blueprint compute-manager-objects

Change-Id: Ib50a4efe874d6f19f5fc1178eb253ec8487f3808
Merge "Add Flavor object"