Move aptosa/untosa into the sockaddrs union and add from/from_ip.•••The struct will also now always be zero-initialized by default which
removes the footgun which has happened previously where the union has
been accessed before being initialized leading to it containing weird
values.
Move the userip module to contrib.•••This module only exists for UnrealIRCd compatibility and provides
the same functionality as the check module but less useful.
Fix more inconsistencies with USERIP.•••- Use a dummy value instead of erroring if the viewer does not have
the privs to see the IP address (fixes UnrealIRCd compat).
- Respect the hideoper mode when building the USERIP response.