It's not really that complex though - the subfield format is a gross
hack to be sure, but it has been quite uncontroversial over decades.
Just split at commas, take the first field and replace ampersand (if
any) with capitalized username. Any fields beyond the first are not
useful except for the now obscure finger.
Not sure about that: some systems may use them internally to stash stuff, given that *BSD supports them.
How about this: Do ampersand substitution, split on commas, return two values: the first part as a string, the rest as a list of strings, and keep the name "full-name". It may not be Posix, but it's always going to be present in /etc/passwd vel sim.
Should & substitution be done on all parts, or only the full name proper?
On the root of zoneinfo: I think we should expect the implementer of SRFI 170 to figure out where it is, though we could say it's in /usr/share/zoneinfo with these known exceptions, and may be elsewhere.