Adding ability to specify a unique ID for a Dirac point.

This can be used to speed up the performance of DiracKernel::addPoint(p)
by avoiding the PointLocator step on subsequent additions of the same point.

Refs #2364.
Adding a test to demonstrate the Dirac point caching.

Refs #2364.
Adding an expect_err test that demonstrates the error handling when
you try to cache a point with a "unique" ID that's already taken.

Refs #2364.
Adding Dirac point reverse cache id lookup as requested by @WilkAndy

Refs #2364.
Update the CachingPointSource test to look up the current point's ID.

Also fixed BCs and renamed the output and gold files to avoid clashing
with an expect_err test in the same directory that used the same
filename.

Refs #2364.
Use DiracKernel caching and currentPointCachedID()
in RichardsBorehole and RichardsPolyLineSink.

Refs #2364.
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.
Removing cache-disabling mesh adaptivity branches from Richards tests.

This also obviated the need for the mesh_adaptivity parameter itself,
so the patch also removes that from several input files.  @WilkAndy
may prefer to keep the parameter anyway, just let me know.

Refs #2364.
Handle the case where the Dirac point is not found on the Mesh.

Refs #2364.
Adding Dirac point caching test with moving mesh.

The Dirac points leave the domain (and hence become deactivated)
in this test.

Refs #2364.
Caching only Dirac point data for local elements

This seems to fix the moving-mesh-in-parallel case, but introduced
some new strangeness in the adaptivity tests.  It is working for the
moment but I don't think it's quite ready to merge yet.

Refs #2364.
Build DiracKernelInfo PointLocator with TREE_LOCAL_ELEMENTS flag.

This patch fixes the issue with Dirac points 'disappearing' in parallel,
and requires a libmesh update before it will compile.

Refs #2364.
Updating comment in the adaptivity section.
Merge pull request #3172 from jwpeterson/dirac_cache

Add "unique id" caching for Dirac points
Merge commit '9de8e18c1ac8af02a18a4b6644c8a91bfe824ba9'