add doxygen docs