scale jobs mem-per-cpu limit

If a job --mem-per-cpu limit exceeds the partition or system limit, then
scale the job's memory limit and CPUs per task to satisfy the limit.
bug 848
Merge branch 'slurm-2.6' into slurm-14.03