Now use ProcessModifier instead of Modifier.toModifyProcess

Using a named object found at import time rather than a delayed function call avoids the possibility of infinite recursion from a cms.Process.load embedded in a process modifying function. In addition, if there are more than one Process described in a configuration, the modify process function will only be applied to a Process if and only if that Process loaded the appropriated module.

Forward port of #6551 to CMSSW_7_4_X. Merging it directly since the former is fully signed in CMSSW_7_3_X.