Make Utf8Utils thread-safe

Utf8Utils holds a static character buffer that it uses while parsing strings, which unfortunately causes issues when multiple threads are trying to instantiate DexFile.  Although it is somewhat hackish, this commit works around the issue by making the buffer a field of ByteArrayInput and passing that into utf8BytesToString().