So just for ha-has, I tried reading `length` starting at offset instead of `length / 2`.. and I get the substitute name in there as well.

Something totally doesn't add up here.  Maybe because I'm only passing the handle and no other info in a pre-filled struct, it falls back to using non-UTF8??

I think the docs here are missing something.. it doesn't makes sense to me to divide `length / 2` based on what the they say.

It works as is... Punt?