w: Use POSIX <utmpx.h> functions where available
<utmp.h> has been deprecated since 2001 in favour of <utmpx.h>. On glibc systems, utmp is just an alias to utmpx, so there is no functional change using one over the other. However, on the musl libc, a library (utmps) can be used to provide utmpx functionality - but not utmp. This means that procps either doesn't work properly (`w` shows nothing under musl with default no-op implementation), or fails to build (utmps provides utmpx.h but no utmp.h). This commit will use utmpx.h where available, which allows `w` to work correctly with utmps and has no change on glibc systems.