Set the scope of the doxygen documentation properly
Right now we have multiple copies of the documentation being built that are identical.
We need to:
- Make sure we need each of these copies of the documentation.
- Scope the documentation properly.
- The user documentation should only cover the public api, and not expose internal classes headers, ...