Reorganize directory structure
Various build improvements

Organized the CMakeLists.txt file and removed some of the brittleness in
the headers regarding Bluetooth.