More tensor_mechanics cleanup

Deal with signedness, perform range checking on index parameters, request the correct type of tensor material property etc. #3472.
May be worth thinking about adding an FParser constant for the number of problem dimensions (just for range checking). Then I could make the check something like ```<= NDIM```