Allow the backend to handle punycode for profile handles and shortnames
While I'm unsure whether we will have UTF8 allowable in our UI, it's just a good idea to prevent IDN homograph attacks to expect unicode in federated messages to be passed with punycode.
Also has the bonus advantage of making the software more friendly for people speaking non-european languages!
Right. Some people are very against punycode, but we never have to actually display it in the UI. We just have to make sure our own approach in the UI/UX is also easily distinguishable.
As far as the federation layer goes, however, RFC 3492 is a standards track document, so if we want to be standards-compliant this is the way to go IMO.