Deny use of nodes based on ntasks_per_core/socket

If a job specifies ntasks_per_core and/or ntasks_per_socket, deny
use of nodes which lack sufficient resources. Previously this was
ignored.
bug 1296