MueLu: Improved error messages if GIDs missing.

Includes MPI rank, local id, global id, block id.
MueLu: disabling PDE systems test.

This is temporary until we sort through the PDE systems aggregation issues
and find a better matrix for testing.

Build/Test Cases Summary
Enabled Packages: MueLu
Disabled Packages: MOOCHO
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_SS_DEBUG => passed: passed=86,notpassed=0 (3.59 min)
Other local commits for this build/test group: 38e30c9
Revert "MueLu: disabling PDE systems test."

This reverts commit 61e4e691d4b37ca2b2e70414042f4a2ea4f532a9.

We don't want people to be able to run MueLu with any maps, and then
report problems. This would be similar to running CG for nonsymmetric
and non-positive definite problems: you might get lucky one time, but
not consistently.
Panzer: Enabling tpetra through model evaluator factory interface

A few things had to be added to get this working. In particular the
linear object factory needed a begin fill and end fill call for use
by the assembly engine. I also need to remove the epetra specifics
from the nox observer.

Also modified the solveTpetraSystem in the curl laplacian example.

Fixed several tests that were failing as a result of resumeFill/fillComplete
calls.
Panzer: Updating example driver, removing some Epetra dependencies

Removing "Epetra" from the names of many objects
Panzer: Adding Tpetra based steady state unit test

Also updating the gather evaluator to use local ids and to ignore the
containers coming from the workset.
Panzer: Refinement of Tpetra scatter and construction interface

Using LIDs and removing dependency on workset linear object containers.
Panzer: Working on derivative information in responses

This is not yet complete, but I want to checkpoint it
MueLu: improved printing of matrix statistics

Originally, we printed out only avg, min and max of two values: number
of local rows, and number of local nonzeros. This does not tell us much
about clusterization of these values, however. I've added printint out
ouf deviation, and replaced absolute min and max by relative.
Assert that the OpenMP device is ready for use before launching
a parallel functor.
Teuchos: Comm: Added gather() (wraps MPI_Gather).

I've also added specializations for Ordinal = int and Packet = various
signed integer types, that bypass serialization and go straight to MPI.
Teuchos: Comm: Added gatherv() (wraps MPI_Gatherv).

The generic implementation is NOT done yet.  That requires a bit of
thought on how to handle the serialization (I think I'll have to sum
up the receive counts to get a total receive count, in order to get
the right serialization buffer length -- and then do something to fix
the displacements as well).  However, I do have working specializations
for Ordinal=int and Packet=short,int,long,long long (if Teuchos' support
for long long is enabled).
Tpetra: Matrix Market I/O: Generalized CrsMatrix test.

The test now computes the gather row Map (the row Map which has all the
GIDs on Process 0) in the most general way possible.  This will let us
generalize the test for different kinds of row Maps.
Tpetra: Directory: Hack to circumvent Valgrind issues with gatherAll.

Matt Bettencourt reported that the use of Teuchos::gatherAll in
Tpetra::DistributedContiguousDirectory was triggering Valgrind to
complain about memcpy with overlapped data inside MPI (OpenMPI
specifically).  A possibly related issue is that Teuchos::gatherAll
appears to interpret the "receive count" argument differently than
MPI_Allgather (which it is supposed to wrap).  This commit includes
a work-around for GlobalOrdinal=int,long.  It is an ugly hack that
we should fix, but it should not break code that depends on other
GlobalOrdinal types (in particular, unsigned integer types).

Build/Test Cases Summary
Enabled Packages: Tpetra, Belos, Ifpack2, Xpetra, MueLu
0) MPI_DEBUG => Test case MPI_DEBUG was not run! => Does not affect push readiness! (-1.00 min)
1) SERIAL_RELEASE => Test case SERIAL_RELEASE was not run! => Does not affect push readiness! (-1.00 min)
2) MPI_DEBUG_SS => passed: passed=172,notpassed=0 (9.24 min)
3) SERIAL_RELEASE_SS => passed: passed=156,notpassed=0 (0.49 min)
4) MPI_RELEASE_SS => passed: passed=172,notpassed=0 (13.37 min)
Other local commits for this build/test group: 33e0aaf, 7c05023, 691d536
Resolved warning
Tpetra: Matrix Market I/O: Fixed matrix comparison function.

The function was using the wrong indices to access data, which was
the likely cause of the most recent test failures on the dashboard.

Build/Test Cases Summary
Enabled Packages: Tpetra
0) MPI_DEBUG => passed: passed=53,notpassed=0 (5.60 min)
1) SERIAL_RELEASE => passed: passed=41,notpassed=0 (9.05 min)
MueLu: AmalgamationFactory: making the hack for indexBase != 0 less of a hack

Thanks to Tobias for suggesting the proper way to handle both offset and
indexBase.
MueLu: Utils: improved printing of matrix statistics
MueLu: Utils: minor cleanup
Tpetra: Matrix Market I/O: Improved readMap's error reporting.

readMap (and by extension, readMapFile) now do better error reporting.
They are more careful to catch exceptions on Process 0 and broadcast a
failure flag to all the other processes, rather than letting deadlock
happen.  The resulting exception message contains information useful
for finding errors in the input data.

Build/Test Cases Summary
Enabled Packages: Tpetra
0) MPI_DEBUG => passed: passed=53,notpassed=0 (2.30 min)
1) SERIAL_RELEASE => passed: passed=41,notpassed=0 (1.18 min)