BUG: strengthen typing in get_c_string, fix StringHashTable segfault
Start with util.pxd, we can tighten the arg from "object" to "str" and simplify it a bit.  Tracking down the places where get_c_string is used, the main one is in StringHashTable, where in `set_item` it is currently used incorrectly.  The test added by this PR segfaults in master.

@TomAugspurger it looks like StringHashTable has relatively light testing.  Should we be using it for StringArray?