finds a config other than (around) the original, returns it; unless numSteps exceeds maxNumStepsBeforeExitingThisFunction, in which case returns NULL.
finds a config other than (around) the original, returns it; unless numSteps exceeds maxNumStepsBeforeExitingThisFunction, in which case returns NULL.updates numSteps, where a step is defined as a move trial in MC simulation (which may be a stay in the current node.)
maxNumStepsInSamplingAConfig : tries at most this many trials in the "sampling Around" of the original protein.
"sampling around" means that the new config will be within +-deltaX,deltaY of the original.