Doxygen documentation and example project improvements

Hopefully you did not have anything major going on locally as this touched pretty much all the lines in the headers accross the codebase. Tried to make documentation more clear and clean. Also reworked the examples a bit to be easier to understand and to showcase correct usage.