Large commit - base class for TensorMechanics plasticity + extras

Utilities involving newton-raphson linear solve

refactored plasticity models to use the base class

At present the base class has preReturnMap and postReturnMap doing nothing.  In my "weak plane" plasticity classes, for instance, the pre and post stuff do various rotations.