Material as a string

This is a big change to almost all the build files to deal with
materials as a string, instead of a number. That needs two things, first
that I have added MaterialSupport.h and MaterialSupport.cxx, that give a
complementary function EvalMat which is similar to EvalVar.

Second every use of EvalVar<int> to get a material or similar needed to
be changed.

Note I have not actually started putting many of the materials in as
names. [Just a couple in ess and ts1 to test.]