Allows to use user->ident string instead of user->nick for NickServ.
Merge pull request #321 from ballock/insp20

Allows to use user->ident string instead of user->nick for NickServ.
Update modules.conf.example with m_ircv3
Move simple user and channel mode handlers into a single file
Compare the result of ldap_search_ext_s to LDAP_SUCCESS....
Windows: In-depth cleanup (see details)
Included changes:
-Fix x64 builds for Windows. Now all configurations compile.
-Remove the non-working rebase stuff.
-Remove the Windows fork hack and instead use FreeConsole() to emulate the behavior. This directly allows us to compile with ASLR, which is turned on now.
-Remove the old GUI IPC mechanism. This is not needed anymore.
-Remove the WIN32/WINDOWS macros. _WIN32 is supported on all x86-based VC++ targets, so that's what we need.
-Enable optimizations for release builds.
-De-duplicate printf_c(), it was previously copy-pasted into colors.h for configure
-Add the VC++ specific bad files in .gitignore
-Disable PID writing on Windows. This is only making sense for *nix builds.
-Replace the CPU usage retrieval with an algorithm analogous to the *nix behavior. Also supports separated now/total values. (Tested with a dummy busy loop - seems working)
-Removed certain unused functions and variables
-Replaced random/srandom with inline functions instead of exports, so this doesn't add overhead
-Remove stdint defines from the windows wrapper
-Remove CRT debug alloc. This is a bad idea as it would define a macro to replace free which breaks builds.
-Re-evaluated the warnings list, commented it.
Windows: Smaller improvements
-.gitignore: Add *.dll
-Fix whitespace mistakes
-Adapt configure's behavior more to the *nix version (make non-git builds "r0" instead of "r", use a properly aligned options dump, move config/version to include, remove inspircd_se_config which is unused)
-Further project file cleanups, fix m_spanningtree's project file
Windows: Several changes (see details)
-Moved FindDNS, made its log behavior consistent with the *nix variant
-Removed random/srandom and attempting to use rand_s() now first. (It's a wrapper for Windows' Random API that is delivering a better algorithm here if no SSL module is loaded)
-Removed the SIGHUP define and adjusted SignalHandler
-Made inet_aton an inline function for increased performance
-Properly defined CoreExport on the functions that need it
-Removed ClearConsole as it wasn't being used
-Removed left over #ifs from support for VC++ older than 2010. We don't even have project files for that - it wouldn't work anymore with these compilers.
Windows: small fixes
- Fix a handle leak in ThreadQueueData (class is unused at the moment)
- Throw an exception when CreateEvent() fails in ThreadQueueData constructor (won't happen too often though)
- Remove misleading comments from inspircd_memory_functions.cpp
Windows: Further misc. changes (see details)
- Last parts of the VS2008 hash map support pulled
- C4800, performance warning about bool forcing, resolved at all occurrences.
- C4701, uninitialized variable 'cached', resolved at all occurrences.
- dlerror() was migrated out of the wrapper for more thread safety (no global buffer being shared) and increased performance.
- Removed the wrong CRT debug flags. This drains a lot of performance.
- Removed the clock_gettime/gettimeofday wrappers
- Replaced all TCHAR/ANSI mix-ups of functions with the correct respective function. Now the project compiles with Unicode set as default charset.
- Added a block of C4355 for < VS2012
Windows: Update project files for c8707149b2a9a1b9774457c2d1629d37920b9f74
Windows: Resolve C4800 properly and fix the a typo in the previous commit