Merge in nodal data block and vector.

We lost some of the nodal data stuff in the initial merge, so I'm reintegrating
it. In this initial commit, everything builds, and ctest has the same pass/fail
lists as before. However, I will likely find issues later when I work on some
heavy users of the nodal data block and vector objects. I did some conversion of
STK classic to new that I need to test still.

Since we lost the commit history on these, I preserve the commit messages here:
= start =>
commit 81a1a215db360b10b887da9eaf6b2edfff0c3926
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Tue Sep 23 19:31:58 2014 -0600

    Cleanup multiple Kokkos node allocations.

    Cleanup multiple Kokkos node allocations to instead use the
    default node. Turn off failing Analysis test when Epetra is not
    present - Analysis uses Dakota/TriKota which requires Epetra.

commit 5f5882d9e3f36fc029da835e01f1f592fec86687
Author: Irina Kalashnikova <ikalash@sandia.gov>
Date:   Sat Sep 13 12:11:20 2014 -0600

    Ifdef'ed Epetra out of disc directory, except Epetra_Comm, if ALBANY_EPETRA_EXE is off.

commit 117f6c01974b61db79edfe574ca4ede8b7d13bfd
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sun Jul 6 22:44:50 2014 -0600

    Serial L2 projection runs to completion.

    Solver/preconditioner needs work, results need to
    be checked. Parallel still needs debugging.

commit 7629623a6fae0a626ddf3f9f2dc5d85120918855
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sun Jul 6 18:57:10 2014 -0600

    More progress towards nodal L2 projection.

commit f586742207b8f471addfb4d73e22489df0a37883
Merge: 181c87d 06bb641
Author: Irina Kalashnikova <ikalash@sandia.gov>
Date:   Sat Jun 28 11:33:09 2014 -0600

    Merged master branch into tpetra and reconciled conflicts.  There are still some issues
    that need to be resolved.  The following examples fail right now:

    	170 - LaplaceBeltrami:2DQuad_Cgrid_LB (Failed)
    	190 - MechanicsTensileTet10_STK (Failed)
    	116 - AnisotropicHyperelasticDamage (Failed)
    	117 - AnisotropicDamage (Failed)
    	118 - Gurson (Failed)
    	119 - Neohookean (Failed)
    	120 - Subdivision_one_tet (Failed)
    	 87 - StabilizedTet4 (Failed)
    	 88 - KfieldBC_baseT (Failed)

    There is a seg fault coming from line 110 in Albany_GenericSTKFieldContainer_Def.hpp for tests 190 and 88.
    For test 170, the problem is this:

    dyn_cast<Thyra::EpetraLinearOpBase>(Thyra::LinearOpBase<double>) : Error, the object with the concrete type 'Thyra::TpetraLinearOp<double, int, int, KokkosClassic::SerialNode>' (passed in through the interface type 'Thyra::LinearOpBase<double>')  does not support the interface 'Thyra::EpetraLinearOpBase' and the dynamic cast failed!

    The rest of the tests that fail are run with python scripts / exodiff.  I am not as familiar with how these are supposed to run
    so I have not looked into what is the problem yet.

    One lingering issue (likely not related to the tests failing) is that I am not sure all
    the capability is there in:

    Albany_DistributedParameterDerivativeOp.hpp

    which I've changed from Epetra_Operator to Tpetra_Operator.  The function

    Teuchos::RCP<Epetra_Operator>
    Albany::ModelEvaluator::create_DfDp_op(int j) const

    in Albany_ModelEvaluator will not work right now with Albany_DistributedParameterDerivativeOp.hpp
    based on Tpetra_Operator.  Need to figure out how to resolve this...  or perhaps we will soon switch to
    Albany_ModelEvaluatorT, in which case this would not be an issue.

    I have created and switched to

    Albany_DistributedParameterLibrary_Tpetra.hpp

    from

    Albany_DistributedParameterLibrary_Epetra.hpp

    for the tpetra Albany branch.

    Merge branch 'master' into tpetra

commit f476980406a35388cfc4fec620afb6c855e7ada9
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sat Jun 21 14:06:39 2014 -0600

    Begin changes needed to support GO = "long long"

commit 528a4c4bd11620668f19608c1fb7131f78c6e59a
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sun Jun 8 10:37:03 2014 -0600

    Rough-in Stratimikos linear solve for L2 projection.

    Most of the implementation is there but some code work and
    debugging is needed.

commit fa8f306cf4e01160b0228be344748cc600d4ee57
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sat May 31 21:03:30 2014 -0600

    Begin adding linear solver for L2 projection.

commit b2b83031bed8434c6731e863d14900369216ad36
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Wed Feb 12 12:20:11 2014 -0700

    Convert nodal data to use Tpetra vectors

commit c81c6ce63f81a25c415f421275c0d108b2a5e74c
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sat Feb 15 10:49:34 2014 -0700

    Add initial ability to save velocity and acceleration fields.

commit da6272470175cc3a9de2363f5f956f354c75b600
Author: Irina Kalashnikova <ikalash@sandia.gov>
Date:   Tue Feb 11 17:49:39 2014 -0700

    Merging tpetra branch with master branch (finally :)).  Currently 4 tests fail: Dynamics, TransientElasticity2D_implicit, Partition and KfieldBC.
    The first 2 fail in the master branch too and need to be re-baselined to take into account changes in Rhythmos several months ago;
    the partition test does not run on Irina's platform as it requires Canopy; for the KfieldBC test to pass, the "IP to Nodal Field" response
    needs to be converted to tpetra, which Glen Hansen will do shortly.

commit 7502ea8bc015dfe6141446dc93ae676519aebd8c
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sat Feb 1 15:01:32 2014 -0700

    Cleanup logic of tagging state variables.

    Fix a bug in Adapt_NodalDataBlock where a std::map of
    boost::tuple pointers was used to reference tuples in a
    std::vector. The map was returning what appeared to be a valid
    pointer but it was not. Not sure why... Redesigned to avoid the problem.

commit cfd0efc5964776165b6c3b0f1c7e0c3ee9a81f3d
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Mon Dec 16 16:42:39 2013 -0700

    Add basic nodal field support to FMDB.

commit 2d74aa9b76221bef3db1e8f3fa61a7ce26e0d836
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Sun Dec 15 19:00:10 2013 -0700

    Finish initial implementation of nodal fields.

    Complete both nodal and element-based mesh size field example.
    Add two tests to check the results of both methods.

commit b8f58bebc9e446e6063fbf7659003a1c813f06a5
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Fri Dec 13 21:37:07 2013 -0700

    Extend StateInfoStruct to hold node data.

commit c4b962bfe5810c0aff2a8a104411d938aa3946f5
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Fri Dec 13 10:06:20 2013 -0700

    Add node field registration logic.

commit 568dec07019b8bcead8e0de54c3ed2c8da048479
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Wed Dec 11 11:25:03 2013 -0700

    Continue additions of nodal data field logic in support of size field.

    WIP

commit d80a75c4799e3082e2a7c76f0dba0532aba88734
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Tue Dec 3 08:49:00 2013 -0700

    Turn off SG tests that need Dakota if Dakota is not present.

commit cdb6062a0c3115e92dd20d4148f814ff7466736e
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Mon Dec 2 21:48:57 2013 -0700

    Change Tpetra vectors to Epetra vectors in size field classes.

commit 457ac63d949c69a5aff0e66471b2c2730e1427ef
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Wed Nov 27 11:30:44 2013 -0700

    More changes in STK nodal graph function.

commit bc2f7edb206f3635f0e81acb00d741998627c28e
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Fri Nov 22 22:16:36 2013 -0700

    Continue adding nodal state field support.

    Continue adding nodal state field support, and mesh
    size field example.

    WIP

commit 76e666741776787321ac289dcf71983ceddb1cc6
Author: Glen Hansen <gahanse@sandia.gov>
Date:   Fri Nov 15 18:08:43 2013 -0700

    Add class to manage nodal data consistency

    Begin to integrate the class to handle the mesh size field information.
<= end =