I originally changed this because strings are Iterable in Python 3, which I'd have to add a special case for earlier in the piece. I'll rewrite it and add some tests to make sure it does what it should before updating my PR.