Make tryAlloc honor global N+1 redundancy
Make tryAlloc honor global N+1 redundancy

When looking for an allocation, make htools restrict to
those that are globally N+1 redundant. As checking for
N+1 redundancy is an expensive operation, we first
look for the best allocations and filter out later.

For the time being, we do not change the semantics of
iterateAlloc; i.e., for iterateAlloc we will pretend
that capacity checks are ignored.

Signed-off-by: Klaus Aehlig <4ce51de36d9068cd7db2eec1151e0f3f95419008@google.com>
Reviewed-by: Petr Pudlak <9d19625f8ee825a2c398462ed335cbcf98f79c32@google.com>

andir/ganeti,andir/ganeti,bitemyapp/ganeti,mbakke/ganeti,mbakke/ganeti,grnet/snf-ganeti,ganeti/ganeti,andir/ganeti,dimara/ganeti,mbakke/ganeti,yiannist/ganeti,bitemyapp/ganeti,leshchevds/ganeti,leshchevds/ganeti,grnet/snf-ganeti,onponomarev/ganeti,dimara/ganeti,yiannist/ganeti,ganeti/ganeti,leshchevds/ganeti,yiannist/ganeti,ganeti/ganeti,onponomarev/ganeti