ENH: Extraction of faces on the caustic surface

This commit adds a new class, Caustics, which implements
functionality for detecting and extracting the faces on
the mesh of the caustic surface from a given tetrahedral
(euler) mesh. A face common to two terahedra with volumes
of opposite sign is an element on the caustic surface
mesh.
ENH: Add caustics param in stream-count utility

Added command-line parameter to the stream-count utility to
indicate whether to compute caustics or not.
ENH: Extraction of faces on the caustic surface

This commit adds a new class, Caustics, which implements
functionality for detecting and extracting the faces on
the mesh of the caustic surface from a given tetrahedral
(euler) mesh. A face common to two terahedra with volumes
of opposite sign is an element on the caustic surface
mesh.

From: George Zagaris <george.zagaris@kitware.com>

git-svn-id: https://svn.alcf.anl.gov/repos/DarkUniverse/hacc/trunk/cosmotools@1914 952bdfbe-fa2e-45c0-a9ae-ac90d4a62daf
ENH: Add caustics param in stream-count utility

Added command-line parameter to the stream-count utility to
indicate whether to compute caustics or not.

From: George Zagaris <george.zagaris@kitware.com>

git-svn-id: https://svn.alcf.anl.gov/repos/DarkUniverse/hacc/trunk/cosmotools@1915 952bdfbe-fa2e-45c0-a9ae-ac90d4a62daf
Merge branch 'svn/trunk'
ENH: Fix issue due to duplicate particles

Commented out assert() that was failing b/c we
encountered files that contained duplicate
particles, most likely due to ghosting. Since the
particles are identical, it doesn't really matter
which one is picked.
BUGFIX: Erroneous code when vtk-plotting caustics

Code plotting caustics in a legacy unstructured grid format
was wrong, due to copy and paste from the EulerMesh class.
The caustics surface mesh consists of triangles not tetrahedra.
Hence, the connectivity array is of stride 3 and the VTK cell
type is 5. Fixed that.
Merge branch 'svn/trunk'
ENH: Fix issue due to duplicate particles

Commented out assert() that was failing b/c we
encountered files that contained duplicate
particles, most likely due to ghosting. Since the
particles are identical, it doesn't really matter
which one is picked.

From: George Zagaris <george.zagaris@kitware.com>

git-svn-id: https://svn.alcf.anl.gov/repos/DarkUniverse/hacc/trunk/cosmotools@1917 952bdfbe-fa2e-45c0-a9ae-ac90d4a62daf
BUGFIX: Erroneous code when vtk-plotting caustics

Code plotting caustics in a legacy unstructured grid format
was wrong, due to copy and paste from the EulerMesh class.
The caustics surface mesh consists of triangles not tetrahedra.
Hence, the connectivity array is of stride 3 and the VTK cell
type is 5. Fixed that.

From: George Zagaris <george.zagaris@kitware.com>

git-svn-id: https://svn.alcf.anl.gov/repos/DarkUniverse/hacc/trunk/cosmotools@1918 952bdfbe-fa2e-45c0-a9ae-ac90d4a62daf
COMP: Incremental Compilation

Modified build such that when re-building, it will
only build the affected objects/libraries or executables
instead of building everything again.

From: George Zagaris <george.zagaris@kitware.com>

git-svn-id: https://svn.alcf.anl.gov/repos/DarkUniverse/hacc/trunk/cosmotools@1968 952bdfbe-fa2e-45c0-a9ae-ac90d4a62daf
Merge branch 'svn/trunk'
ENH: Update tess in cosmotools
WIP: Add pnetcdf dependency