Feature: scheduler: implement new critical and influence options
The feature set is bumped because critical is a resource meta-attribute and
thus not dependent on schema version, and we don't want it to flip back and
forth between being respected or not.
critical just sets a resource-wide default for influence, so only influence is
actually used in scheduling.
It's a little tricky deciding when to consider influence. The basic idea is
that when a colocation constraint "A with B" has no influence, A's location
preferences should not influence B's location. But the colocation still matters
for things like where A is allowed to run. Thus we only consider it when
cycling through a resource's ->rsc_cons_lhs to add the dependents' preferences.