Cleanup: Stop using #defines and handle whitespace in CMakeLists.

Addresses issues #198 and #199.