CMakeLists.txt:
- CMake convention seems to be upper-case for variables and lower-case for
  functions. Adjusted the project's CMakeLists.txt appropriately.
- The build type, which is defined by the "BUILD_TYPE" variable, defaults
  to "Release". This default can be modified by the command-line argument to
  cmake: cmake -DCMAKE_BUILD_TYPE:STRING={Debug|Release} .
- Workaround for the external repo deletion problem when rerunning cmake (closes
  #2). See the ticket for details on the solution.
- Moved cmake-related files to a cmake/ folder to unclutter the project dir.
- All external project's BINARY_DIRs point to build/<project-name>-<build-type>,
  such that each build-type has its own subdirectory outside the src-tree.

cmake/safe_git_clone.cmake:
- CMake script to check for existing repos before cloning them.
- Using cmake makes this script platform-independent (I hope).

.gitignore:
- Generated directory "build" will be ignored by git.