Switch to CMake

I've tested on Linux, OSX and Cygwin, but please help with testing your favorite configurations and report any issues found.

This change provides a configure wrapper script to make it almost backwards compatible with the old build system. See `configure --help` for details.

What comes to the build flags, it's not 100% identical with the old ones. Some of the platform specific build flags collected over the last decade were intentionally left behind. The latest ZNC requires a modern toolchain that supports C++11 anyway, so many of those old exotic flags are probably no longer even needed. The idea is to let CMake as a cross-platform to specify the correct flags, mostly.

The proposal also changes the structure a bit. After struggling with the damn object files for a good while, I decided to propose building the core as a library instead, like it was already done on Cygwin. I strongly believe this is the right direction to go in the future (see #210 and [Wiki](http://wiki.znc.in/Ideas)).

/cc @samuelgaist
One option could be to provide prebuilt (on some ancient linux with an old glibc?) binaries for those who can't build themselves.

Interestingly, cmake seems to offer linux binary installers that set up cmake wherever you want in no time. Only 32-bit though: http://www.cmake.org/download/

Also, writing a helper script to download and build cmake should not be a problem. The question is more about whether it's still too big dependency. The binary installation (cmake-3.0.1-Linux-i386) is ~74MB.