Branch UnitTest, VisualUnitTest off into libs

This improves build times drastically. Previously, every test
executable was building the framework sources separately, leading
to massive duplication.

* tests/CMakeLists.txt: Add NOM_TESTS_VTEST_TESTS env var for
building VisualUnitTest framework separately from the core
UnitTest tests.

* CMakeLists.txt: Bump min req ver up to 2.8.12; this allows
automatic RPATH setting to occur for libraries.
VisualUnitTestTemplate: Fix compile errs
tests/CMakeLists.txt: Add VisualUnitTestTemplate to build
Re-organize tests/common directory

Move UnitTest && VisualUnitTest from shared dir into new,
separated homes.
Rename unit tests

Match the source code file name of *all* unit test executables.
Rename unit test libs
Remove obsolete setting of rpath
Clean up tab spacing && remove build unit dep checks
Fix build output dir for unit tests

The build output dir for test executables is now
'build/tests/Debug' (was 'build/tests')

* examples/CMakeLists.txt: Clean up build output dir; the only
output change here is the dir name is now 'Debug' (was 'debug').
Fix exec of test
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
ConsoleOutput: Fix colored logging output

Introduce a private env method so we can get around the circular
dependency issue with nomlib-file in the mean time.
Replace NOM_RUN_TESTS_HEADLESS with check for -i switch
Relocate auto-generated source, header files

cmake/templates/config.hpp.in -> include/nomlib/config.hpp.in
cmake/templates/version.hpp.in -> include/nomlib/version.hpp.in
cmake/templates/revision.cpp.in -> src/revision.cpp.in
VisualUnitTest: Drop nomlib-gui dependency