Change TodoMVC to not modify state in place

Instead, use .concat and make a new todos array.

(First react pull request, lemme know if I did something wrong.)