Add T.String()
Optimize intersect()

By rearranging the loops, this gives a 2x speedup.