Code reorganization, fix Linux crash, remove numeric UID matches
This release mostly reoganizes the code required to port doas to multiple platforms, moving the necessary functions into the compat sub-directory. Thanks to amalleo25 for all the work on this change.
6.2p1 also fixes a crash on Linux systems when a specified user on the command line did not match a valid entry in the doas.conf file.
In the past, doas would first try to find an exact username match when the "-u" flag was used and, if one could not be found, it would try to find a matching numeric UID. Now doas requires that an exact username be specified when "-u" is used. This avoids confusion (and, on Linux, fuzzy matches when a username begins with a number). This means "doas -u 0" can no longer be used to run a command as root, and "duas -u 1000" is not ambigious if there is a user with the name "1000" on the system.