remove all comments on issue number
revert tensor.py to original, test_tensor not pass due to this modification. Reason unknown.
revert mul since tests_subs cannot pass.
revert basic.py
new fix for tensor.py
assignment to self is resolved in this commit.

$ git grep -n ' self[ ,][^=.[!]*= '
sympy/core/expr.py:1441:        * if self is an Add then self = i + d
sympy/core/expr.py:1442:        * if self is a Mul then self = i*d
sympy/galgebra/ga.py:567:    def __add_ab__(self, b):  # self += b
sympy/galgebra/ga.py:585:    def __sub_ab__(self, b):  # self -= b
sympy/galgebra/ga.py:644:    def __mul_ab__(self, b):  # self *= b
sympy/polys/agca/modules.py:960:        # Then self = F/N.
sympy/polys/rings.py:1327:           self = sum(fv[i]*qv[i]) + r