Simplified build: downloads externals automatically, unless paths are supplied.

Other minor changes: Doxygen is now run from "code" directory, removing the "code" folder from the file view, and CMakeLists.txt is better documented.