implemented tensor train dot product. have to check it and identify different cases (a is used up, b is used up, none is used up and both are used up; used up in terms of contracted indices)