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.
Merge pull request #3444 from jwpeterson/fixup_dirac_offdiag

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