Handle caching when Elem containing Point is not active.

The other two cases of interest,
* (active && !contains_point)
* (!active && !contains_point)

currently fall back to PointLocator searches, but I have
some ideas for how these could be optimized.  Still need
to add a test case for the refinement case.

Refs #2364.
Adding test of uniform refinement with Dirac point caching.

Refs #2364.
Adding test of adaptive refinement with Dirac point caching.

Refs #2364.
Optimizing PointLocator usage in DiracKernels.

Refs #2364.