Added the join(), and this makes all the tests pass. This is a bit
surprising, because I was expecting to have to have some sort of
synchronization amongst the threads. I also added a test that does the
counts on a string of a million 'x's, which should ensure some sort
of contention, and that passes as well.