Tpetra: Fixed Lesson01 typo and simplified example codes.

The typo was that index.doc included the same .cpp example file twice,
and as a result skipped another one of the .cpp examples.  This commit
fixes that.  It also removes unnecessary complexity from the example
codes, like use of Teuchos::opaqueWrapper (not necessary since
Trilinos 10.x, if I recall correctly) and Teuchos::oblackholestream
(it's less scary for new users just to test if my rank is 0 before
printing to std::cout).  Both of those Teuchos classes are useful, but
introducing them adds cognitive overhead without making the examples
more concise.

Build/Test Cases Summary
Enabled Packages: Tpetra
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_COMPLEX => passed: passed=72,notpassed=0 (2.65 min)
3) SERIAL_RELEASE_COMPLEX => passed: passed=53,notpassed=0 (10.23 min)
Belos: fixing a warning

Added a zero initialization of curNumRHS_ to avoid

  "<>::firstcallDefineScaleForm_" will be initialized after
  "<>::curNumRHS_".
Tpetra: relaxing the map comparison check in fillComplete

We only need isSameAs = true, not same pointers.
MueLu: EminPF: create the stridedMap view for the final prolongator

There is a huge FIXME all over that code.
Belos: fixing the warning fix
Belos: Fixed minor build errors and warnings in initializer lists.

Build/Test Cases Summary
Enabled Packages: Tpetra, Ifpack2, Belos, Epetra
0) MPI_DEBUG => passed: passed=210,notpassed=0 (6.43 min)
1) SERIAL_RELEASE => passed: passed=187,notpassed=0 (4.70 min)
Tpetra: minor change to cmake configure

Examples in tpetra/example are now enabled by Tpetra_ENABLE_EXAMPLES, rather than Tpetra_ENABLE_TESTS.

Build/Test Cases Summary
Enabled Packages: Tpetra
0) MPI_DEBUG => passed: passed=72,notpassed=0 (17.13 min)
1) SERIAL_RELEASE => passed: passed=53,notpassed=0 (7.42 min)
Update to MultiPoint Dakota interface in piro
to be compatible with latest Dakota_Stable.
MueLu: scaling test: minor cleanup

Switch to right preconditioning for gmres.  This matches AztecOO's behavior.
Adding command line option for max its.
Switching to PseudoBlockCG rather than BlockCG.
Adding command line option to turn off residual history scaling in Belos.  (Chris and Ray, rejoice!)
MueLu: scaling test: Additive Schwarz XML example

Adding Ifpack usage for doing overlapping Additive Schwarz with direct
solves on subdomains.
MueLu: IfpackSmoother: add Ifpack descriptions

Adding calls to Ifpack's GetLabel() method in IfpackSmoother::description().
Most (all?) of the Ifpack preconditioners implement this method.  GetLabel()
provides a short description of the preconditioner, and is meant to be
used with AztecOO.

 --------------------------------------------------------------------------------
 ---                            Multigrid Summary                             ---
 --------------------------------------------------------------------------------
[snip]

 Smoother (level 0) pre  : Ifpack_AdditiveSchwarz, ov = 1, local solver =
        ***** `Amesos_Klu'
        ***** Condition number estimate = 81.3164
 Smoother (level 0) post : Ifpack_AdditiveSchwarz, ov = 0, local solver =
        ***** `IFPACK ILU (fill=0, relax=0.000000, athr=0.000000, rthr=1.000000)'
        ***** Condition number estimate = 1.70707

 Smoother (level 1) pre  : MueLu::AmesosSmoother{type = Superlu}
 Smoother (level 1) post : no smoother
MueLu: enabling Ifpack overlapping AS through xml

It's now possible to do overlapping Ifpack Additive Schwarz through the
EasyInterface.  This was previously hardwired to 0.  The subdomain solve
can now be a direct solve (aka Amesos).

Examples:

  <!-- Ifpack1: Additive Schwarz, overlap=1, subdomain solver KLU for pre and post -->
  <Parameter        name="smoother: type" type="string"       value="Amesos"/>
  <Parameter        name="smoother: overlap" type="int"       value="1"/>

  <!-- Ifpack1: Additive Schwarz, specifying different overlap and subdomains solvers for pre and post -->
  <Parameter        name="smoother: pre overlap" type="int"   value="1"/>
  <Parameter        name="smoother: pre type" type="string"   value="Amesos"/>
  <Parameter        name="smoother: post overlap" type="int"  value="0"/>
  <Parameter        name="smoother: post type" type="string"  value="ILU"/>
MueLu: avoid Ifpack details in interface test

Ifpack smoother details aren't printed if the Verbosity level is
MueLu::Test.  This allows the EasyInterface tests to continue to pass.
Perhaps rebasing would fix this issue.

Build/Test Cases Summary
Enabled Packages: MueLu
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=144,notpassed=0 (4.20 min)
3) SERIAL_SS_DEBUG => passed: passed=107,notpassed=0 (3.48 min)
Other local commits for this build/test group: 4d3ad28, f4f01fc, 45ae9dd, 9c16dfa
MueLu: allow user to change block size via XML

Paul Lin reported that the EasyInterpreter was throwing an exception if
the block size in the XML deck didn't match the matrix block size.
This is strange, as the XML interface is the main way an application will
interact with MueLu.  In particular, the app should be able to set the
number of PDEs!

Also updating a couple EasyInterpreter tests.  Not sure why the warning
I added is the only one to be printed....

Build/Test Cases Summary
Enabled Packages: MueLu
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=144,notpassed=0 (2.80 min)
3) SERIAL_SS_DEBUG => passed: passed=107,notpassed=0 (2.75 min)
Kokkos: updated tutorial Material
Kokkos: fixed bugs in Kokkos::initalize() which was added last week

The thread and numa intialization was not correct (you would get the
wrong number of threads/numa regions being utilized).
Kokkos: Made DualView use the ViewTraits class

This allows DualView to take the same template parameter combiniations
as Kokkos::View. It also makes some internal typedefs consistents
(stuff like non_const_data_type etc.).