added comments for documentation
added doxygen stuff