David,
I have a well developed tensor program, Tensorial, that I could share with you. It has all the standard processing of tensor index notation.
And I have another solution, which is even better if you are interested in the mathematics of modern physics.
If you would like to write me at the email address in my profile I can tell you more.