When allocating widearea virtual nodes, look for a global capacity
attribute in the types table to cap the number of allowed virtual nodes on each physnode (by type). We have to look in the reserved table to see how many already allocated on each physnode, and adjust the counts accordingly. Doing it here (via assign_wrapper) is not atomic and so it could fail to catch an over subscription, but on a lightly used testbed this will not be a problem in practice.
Showing with 32 additions and 1 deletion