idn improvements
The IDN solution needs some revamping, and bug fixing: * [x] the punycode domain should be used as the authority; * [x] [idnx](https://github.com/HoneyryderChuck/idnx) should be used when available; * [x] current native punycode module should be compared to [addressable's](https://github.com/sporkmonger/addressable/blob/main/lib/addressable/idna/native.rb);
issue