Fix NULL dereference on rehash when there is a fatal error in the configuration of connect classes

Fixes issue #780 reported by @JDowny
m_spanningtree Don't send snotices to servers about remote servers splitting

The snotice is sent to opers when the SQUIT is processed by their server
m_spanningtree Do pointer comparison before deleting one of the pointers in TreeSocket::Squit()

While the previous code worked fine in practice, it was incorrect in theory
Improve detection for non-cidr masks to prevent unwanted matches

Fixes issue #762 reported by @neoinr
cmd_names Allow opers having the channels/auspex priv to view the NAMES list of +s channels from outside

A version of the check removed by this commit is in Channel::UserList() which takes the priv into account

Discovered by @Cronus89
Backport "Refactor Channel::UserList() to use std::string"

This gets rid of questionable snprintf() usage, reported by @hifi

Backported commit: 8a06d54076551387f83a29360478ee6605e241b6
Fix NAMES list getting truncated on servers having an excessively long server name
m_operprefix Don't set +y on the oper if hideoper is being unset due to deopering

Fixes issue #801 reported by @UselessOper
m_httpd Fix typo noticed by @SaberUK
m_globalload Don't pass a callback to ModuleManager::Reload() if reloading m_globalload
m_watch Validate targ before use, noticed while rewriting m_watch for 2.2
Major example configuration and helpop update

Big thanks to @m4z (#621) and @Robby- (#630) who contributed a lot to this
Fix typos and update text in the configure script

Some of these were picked from #448
Add REG_ALL checks to treat unregistered users as nonexistent in more cases
Fix snotice about disabled command usage being sent to the wrong snomask
Fix typo in helpop-full that prevented it from loading and other minor helpop issues
Fix IPv6 address handling in 6aaf7047297b739377e7d509cb914f32447fb281
Release 2.0.16
Correct the syntax messages of a few modules.
Some more helpop config updates.