Overhaul of CMake build system

Initial modularization of the engine; this breaks the engine into
individual libraries (all using same version scheme): core, file, math,
system, graphics gui, ptree, serializers, audio. The major benefit to
this is to decrease build times. One of the bonuses to this is clean,
logical deduction of who depends on what.

* platform.cmake: Clean up how the OSX SDK is set; passing
-D CMAKE_OSX_DEPLOYMENT_TARGET=<ver> takes care of everything that we
had to do manually before, with much cleaner syntax.

* Honor the default value of CMAKE_INSTALL_PREFIX -- the end-user must
explicitly set this variable now, else accept CMake defaults for their
platform. (We were defaulting to the build dir of the project).

* Use CMake find module scripts for all of nomlib's third-party
dependencies; this has several benefits, such as easing support for
future Linux builds. Also, sane support for using third-party
dependencies outside of nomlib's pre-packaged dir path by passing the
applicable prefix path as an environment variable.

* nomlib-config.cmake: The CMake find module now supports the
modularized components. Dependencies are located automatically --
configurable via NOMLIB_DEPS_ROOT (i.e.: dependency's install prefix) --
and appended onto a variable that external projects can use. This
simplifies inclusion of nomlib in an external project.

* CMakeLists.txt: Rewrote most of the installation phase (removal of a
lot of silly, needless variables, better conditional structuring,
etc.). Installing nomlib on Windows now actually installs header files,
libs, CMake module, etc. under "Program Files".

* RocketSDL2RenderInterface: Remove dependency on GLEW by using SDL2's
OpenGL helper functions.

* audio/OpenAL: Remove external dependency on OpenAL and libsndfile
header files by forward declare structs where applicable. In turn, this
makes OpenAL.hpp, sndfile.h private header files (included only in cpp
files).

* Relocate nom::set_alignment from math/math_helpers to
graphics/graphics_helpers; this is necessary for decoupling from
nomlib-math library (uses nom::Transformable, which is now also part of
nomlib-graphics).
Doxyfile.in: Do not generate man pages
third-party/README.md: Include changes made for SDL2.framework dep
nomlib.sublime-project: Add xcode to folder exclusions
WinFile: Fix returned path when a POSIX path is passed

This bug fix resolves working directory issues that arise when trying
to run unit tests from the generated project file by accepting both
POSIX and Windows delimiters as valid.

This was due to the fact that we use argv[0] in nom::init to obtain the
current working directory before switching to it, of which value gives
us a POSIX path, whereas we were expecting a native path.
README.md: Update build howto for OSX, Windows