added doxygen-based documentation and a readme