Code for handling unicode/punycode name conversions v2

Opening new PR for clean commenting
Is there a way to prealloc all this and then putting the right values on the right spots?