When it looks like we're at capacity, don't use min-ready nodes to
calculate demand. Requesting min-ready when over-capacity results in
bad allocation choices; nodes with high min-ready but no real work to
do will be granted their inflated allocations.
Move the provider calculation above the demand calculations so we can
gauge how many available nodes a label will be possibly be allocated.
Clarify the operation in the documentation slightly.
Change-Id: Ifa62dd152ddeaf47aea224f9b7049aeab8b0970d