Only compute off-diagonal Jacobian entries if variable has DOFs.

This patch does the proper checking at the
ComputeDiracThread::onElement() level rather than the
DiracKernel::computeOffDiagJacobian() level, and undoes the quick fix
I committed earlier.

Refs #668.