SERVER-15248 Make ScatterGatherRunner, ElectCmdRunner and FreshnessChecker cancelable.

This is necessary so that step-downs can cancel running elections.