Changing SCOTCH_Num_Traits to more generic TPL_Traits for use with
ParMETIS.
Currently, TPL_Traits generates a signed/unsigned comparison warning.
Panzer: Adding local computation of face orientations

This includes unit tests for Hex and Tet elements.

Also made minor (editing comments) to the DOFManager and added
a new construction to the ELOC. This is supposed to support faster
boundary conditions in the future.
Panzer: Adding face orientations to DOF Manager

Also added a test to verify this capability.
Intrepid: Adding DOF coordinates to the face tet element

Also adding to the unit test
Added unit test for TPLTraits.
Conversion of gno_t to index type required by the TPL Scotch or ParMETIS
Using Teuchos::asSafe in TPLTraits for conversion from gno_t to
index type required by TPL (SCOTCH_Num or ParMETIS' idx_t).
Adding Zoltan2_AlgParMETIS.hpp
Not yet compiled
Additional method
Changing behavior of ArrayView::view() to *not* create new weak ArrayRCP (Trilinos #6202)

As described in Trilinos #6202, the old implementation of
ArrayView::view(offset, size), and therefore ArrayView::operator()(offset,
size), would not allow code like:

  T *data = new T[10];
  ArrayView<T> view(data, 10);
  view = view(0, 5);
  out << view.size() << "\n";

in a debug-mode build.

The problem is that ArrayView::view() was calling ArrayRCP::view() which was
creating a *new* weak ArrayRCP object which created a DanglingReference error.

After much conversation and debate, while one might argue that this is valid
and even desired behavior by some points of view, it is not consistent with
the implementations of the copy and assigment operators for ArrayView.

New unit tests were added to define and demonstrate the desired behavior.

Build/Test Cases Summary
Enabled Packages: TeuchosCore
Disabled Packages: CTrilinos,ForTrilinos,PyTrilinos,Didasko,Mesquite,Phdmesh,Pliris,Claps,Amesos2,Ifpack2,STK,FEApp
Enabled all Forward Packages
0) MPI_DEBUG => passed: passed=1395,notpassed=0 (16.05 min)
1) SERIAL_RELEASE => passed: passed=1320,notpassed=0 (6.53 min)
2) MPI_DEBUG_ST => passed: passed=1767,notpassed=0 (31.94 min)
3) SERIAL_RELEASE_ST => passed: passed=1637,notpassed=0 (11.51 min)
Attempt to fix some build warnings.

(From Sierra)
Attempt to improve Env::username by getting USER env var if other approach fails.

Currently Env::username (which is used in audit-logging) fails on some platforms
when it fails to find a user's name. This commit adds some fall-back code that
queries the environment variable "USER" in that case.

(From Sierra)
STK: Add an additional coordinate mapping for Hex unit fixture.

(From Sierra)
IOSS: Check for incomplete nemesis information (no shared node data)

(From Sierra)

Build/Test Cases Summary
Enabled Packages: SEACASIoss, STKIO, STKMesh, STKUnit_tests, STKUtil
Disabled Packages: PyTrilinos,SEACASExo2mat,SEACASMat2exo,Optika,STKClassic,Sundance
Enabled all Forward Packages
0) MPI_DEBUG => Skipped configure, build, test due to no enabled packages! => Does not affect push readiness! (-1.00 min)
1) SERIAL_RELEASE => Skipped configure, build, test due to no enabled packages! => Does not affect push readiness! (-1.00 min)
2) MPI_DEBUG_SS => passed: passed=65,notpassed=0 (63.73 min)
3) SERIAL_RELEASE_SS => passed: passed=15,notpassed=0 (12.45 min)
Other local commits for this build/test group: 49a8d5d, 0f6bce9, 001f038
Kokkos: Fix parallel_for + team policy + Cuda to maximize use of Cuda thread blocks.
PyTrilinos: got rid of NestedEpetra paradigm

For PyTrilinos sub-modules NOX.Epetra, LOCA.Epetra and
Isorropia.Epetra, I was using the name 'NestedEpetra' to help
distinguish from the top-level PyTrilinos.Epetra module.  I would then
use 'import NestedEpetra as Epetra' so that the end user would get the
expected namespace hierarchy.

I changed NestedEpetra to Epetra and moved to using 'from . import
Epetra' to import the proper Epetra module.  This worked for NOX and
LOCA, because the nested Epetra module is package (a directory Epetra/
rather than a file Epetra.py).  This didn't work for Isorropia because
the relative import statement has to import a package, not a file.  So
now Isorropia generates an IsorropiaEpetra module, and uses the old
'import ... as ...' tricjk as before.  But the swig interface filename
is Isorropia.Epetra.i, which I think has better optics.
PyTrilinos: renamed files to get rid of 'NestedEpetra' paradigm
PyTrilinos: renamed files to get rid of 'NestedEpetra' paradigm
There is an error in BlockCrsMatrix when using sumInto. The findRelativeOffsetOfColumn method used
a nonzero hint incorrectly. This has now been fixed.

Build/Test Cases Summary
Enabled Packages: Ifpack2, Tpetra
Enabled all Forward Packages
0) MPI_DEBUG => passed: passed=668,notpassed=0 (38.84 min)
1) SERIAL_RELEASE => passed: passed=591,notpassed=0 (14.91 min)
Merge branch 'pytrilinos-no-nestedepetra'
Fixed indexing bug in scale_round_weights of ParMETIS/Scotch interface.
Bug would be exhibited only when multiple vertex weights were used, and
even then would result only in scaling weights when it wasn't necessary.
However, the change does change the answer files for ch_brack2_3 tests,
since a different weight scaling was used.