Another problem with string theory is that there are 5 different versions of it. Each version allows different kinds of strings and says they work in different ways. String theory is supposed to be a "theory of everything" so there should be only one version, not 5. M-theory solves this problem.