Reorganizing CMakeLists.txt for clarity and expanded options. Attempting to clean up some warnings on output, and to make it easier to find things within the file.