Removed reliance on `stringWithUTF8String:`

Hi, this looks awesome, but I am not quite sure why it is built onto of -stringWithUTF8String:.

I have modified it to remove the swizzeling. The macro syntax is the same and all unit tests still pass.