Go directly from ByteString to String.

Currently, newCBStringLen unpacks a Bytestring to a list of Chars, then packs it back
into a CString. This is very slow. Copying directly gives two orders of magnitude
speedup in my tests. If you like this change, the rest of Utils should probably be
modified to work similarly.