Updating everything for Debug and Release builds

Added new option to python build script for specifying release and debug
release (debug by default).

Updated CMakeLists.txt to use new compiler flags that have "_DEBUG" and
"_RELEASE" appended. This is mainly useful for specifying full debug
symbols in executables.

Also added in the ability to specify specific build targets to the
python script. Not sure how to deal with it on Windows yet but it
works (somewhat) on Linux. All of the tests are still built which is
an issue for the tests that rely on libraries that are used by the
build target. Not really sure how to overcome that one easily. There
probably isn't an easy way and it is most likely not really ever going
to be used since there isn't a real reason to build a specific target
with the build script, it's more used for automated builds and testing.