Refactored the discovery module.
CMakeLists.txt clean up
Typos and documentation clean up
Adding documentation system