Adding setter for memory realloc error
Fixing adding jacobian blocks based on the coupling matrix

The coupling matrix is not symmetric, thus we cannot rely on single
check in it.  We really have to check each item.
Improving Jacobian sub-block adding

When adding a Jacobian block, add only those that were actually used.  It is
determined by calling Assembly::jacobianBlock.  We assume that if that one is
called, something will add data to it and therefore we have to add it.

Simply checking the coupling matrix is not enough, because it does not respect
the subdomain restricted variables. This should fix that, becuase the subdomain
resctiction is taken care of at the upper levels like ComputeJacobianThread.

Closes #4384
Fixing typo in method name