Add driver filter for scheduler that utilizes an evaluator

This spec proposes that a new filter and weigher be added to the Cinder
scheduler that will filter drivers and weigh volume backends based on
filtering and goodness functions that are supplied by volume backends
dynamically.  An evaluator class will be used by the filter and weigher
to evaluate the supplied functions.

blueprint filtering-weighing-with-driver-supplied-functions
Change-Id: I59b607a88953a346aa35e67e785a0417a7ce8cc9
Merge "Add driver filter for scheduler that utilizes an evaluator"